日韩性视频-久久久蜜桃-www中文字幕-在线中文字幕av-亚洲欧美一区二区三区四区-撸久久-香蕉视频一区-久久无码精品丰满人妻-国产高潮av-激情福利社-日韩av网址大全-国产精品久久999-日本五十路在线-性欧美在线-久久99精品波多结衣一区-男女午夜免费视频-黑人极品ⅴideos精品欧美棵-人人妻人人澡人人爽精品欧美一区-日韩一区在线看-欧美a级在线免费观看

歡迎訪問 生活随笔!

生活随笔

當(dāng)前位置: 首頁 > 编程语言 > python >内容正文

python

1000道Python编程题

發(fā)布時(shí)間:2023/12/8 python 28 豆豆
生活随笔 收集整理的這篇文章主要介紹了 1000道Python编程题 小編覺得挺不錯(cuò)的,現(xiàn)在分享給大家,幫大家做個(gè)參考.

1、

分析

思維發(fā)散一點(diǎn),對(duì)于給定的合理數(shù)字輸出都為類似圖中的菱形,我們探索一下上圖的特點(diǎn): 組成圖形的元素個(gè)數(shù)先增后減,并且符合: 假設(shè)給定的數(shù)字為m,那么行數(shù)為2m+1,每一行的元素個(gè)數(shù)為:2n+1(n<m+1) 2(m-n-1)+1(2m+1>n>=m+1)對(duì)于存在的空格補(bǔ)齊使用字符串的center方法 def print_format_star(n):lenn = 2*n+1for i in range(n):result = '*'*2*i+'*'result = result.center(lenn,' ')print resultfor i in range(n+1):result = '*'*2*(n-i)+'*'result = result.center(lenn, ' ')print result#精簡(jiǎn)一點(diǎn)的: def print_format_star(n):lenn = 2*n+1hr = n+1for i in range(lenn):if i < hr:result = '*' * 2 * i + '*'else:result = '*' * 2 * (lenn - i-1) + '*'result = result.center(lenn, ' ')print result

10、

題目:有一分?jǐn)?shù)序列:2/1,3/2,5/3,8/5,13/8,21/13…求出這個(gè)數(shù)列的前20項(xiàng)之和。

from __future__ import division def cal_sum():fenzi = 2fenmu = 1lst = [2]for i in range(1,20):fenmu,fenzi= fenzi,fenmu+fenzilst.append(fenzi / fenmu)return reduce(lambda x,y:x+y,lst)

11

題目:求1+2!+3!+…+20!的和。

def get_ret(n):tmp = 1lst = [1]for i in range(2,n+1):tmp = i*tmplst.append(tmp)return reduce(lambda x,y:x+y,lst)

100

題目:給一個(gè)不多于5位的正整數(shù),要求:一、求它是幾位數(shù),二、逆序打印出各位數(shù)字。

def num_reverse(num):numLen = len(str(num))print numlenfor i in range(numLen):toPrint = num % 10num = (num - toPrint)/10print toPrint

101

題目:有n個(gè)人圍成一圈,順序排號(hào)。從第一個(gè)人開始報(bào)數(shù)(從1到3報(bào)數(shù)),凡報(bào)到3的人退出圈子,問最后留下的是原來第幾號(hào)的那位。

def who_remain(n):lst = range(1, n+1)while n > 2:lst.pop(2)before = lst[:2]lst = lst[2:]lst.extend(before)n = len(lst)return lst[-1]

110

編寫一個(gè)函數(shù),輸入n為偶數(shù)時(shí),調(diào)用函數(shù)求1/2+1/4+…+1/n,當(dāng)輸入n為奇數(shù)時(shí),調(diào)用函數(shù)1/1+1/3+…+1/n

def sum_even_odd(n):ls = [1/i for i in range(n,0,-2)]return sum(ls)

111

找到年齡最大的人,并輸出。

def get_oldest():import operatorperson = {"li": 18, "wang": 50, "zhang": 20, "sun": 22}name = max(person.iteritems(), key=operator.itemgetter(1))[0] # 獲取最大值的 keyage = max(person.values())return name,age

1000

求0—7所能組成的奇數(shù)個(gè)數(shù)。

def get_odd():sum = 4s = 4for j in range(2, 9):print sumif j <= 2:s *= 7else:s *= 8sum += sprint 'sum = %d' % sum

cookies

#字符串日期轉(zhuǎn)換為易讀的日期格式。 from dateutil import parser dt = parser.parse("Aug 28 2015 12:00AM") print dt

總結(jié)

以上是生活随笔為你收集整理的1000道Python编程题的全部?jī)?nèi)容,希望文章能夠幫你解決所遇到的問題。

如果覺得生活随笔網(wǎng)站內(nèi)容還不錯(cuò),歡迎將生活随笔推薦給好友。