100?個?Python?小例子(練習(xí)題四)
實例076:做函數(shù)
題目:編寫一個函數(shù),輸入n為偶數(shù)時,調(diào)用函數(shù)求1/2+1/4+...+1/n,當(dāng)輸入n為奇數(shù)時,調(diào)用函數(shù)1/1+1/3+...+1/n
def peven(n): ? ? i = 0 ? ? s = 0.0 ? ? for i in range(2,n + 1,2): ? ? ? ? s += 1.0 / i ? ? return s def podd(n): ? ? s = 0.0 ? ? for i in range(1, n + 1,2): ? ? ? ? s += 1.0 / i ? ? return s def dcall(fp,n): ? ? s = fp(n) ? ? return s if __name__ == '__main__': ? ? n = int(input('input a number: ')) ? ? if n % 2 == 0: ? ? ? ? sum = dcall(peven,n) ? ? else: ? ? ? ? sum = dcall(podd,n) ? ? print (sum)
實例077:遍歷列表
題目:循環(huán)輸出列表
l=['moyu','niupi','xuecaibichi','shengfaji','42'] for i in range(len(l)): ? ? print(l[i])
實例078:字典
題目:找到年齡最大的人,并輸出。請找出程序中有什么問題。
if __name__ == '__main__': ? ? person = {"li":18,"wang":50,"zhang":20,"sun":22} ? ? m = 'li' ? ? for key in person.keys(): ? ? ? ? if person[m] < person[key]: ? ? ? ? ? ? m = key ? ? print ('%s,%d' % (m,person[m]))
例079:字符串排序
題目:字符串排序。
l=['baaa','aaab','aaba','aaaa','abaa'] l.sort() print(l)
實例080:猴子分桃
題目:海灘上有一堆桃子,五只猴子來分。第一只猴子把這堆桃子平均分為五份,多了一個,這只猴子把多的一個扔入海中,拿走了一份。第二只猴子把剩下的桃子又平均分成五份,又多了一個,它同樣把多的一個扔入海中,拿走了一份,第三、第四、第五只猴子都是這樣做的,問海灘上原來最少有多少個桃子?
if __name__ == '__main__': ? ? i = 0 ? ? j = 1 ? ? x = 0 ? ? while (i < 5) : ? ? ? ? x = 4 * j ? ? ? ? for i in range(0,5) : ? ? ? ? ? ? if(x%4 != 0) : ? ? ? ? ? ? ? ? break ? ? ? ? ? ? else : ? ? ? ? ? ? ? ? i += 1 ? ? ? ? ? ? x = (x/4) * 5 +1 ? ? ? ? j += 1 ? ? print(x) ? ? for p in range(5): ? ? ? ? x=(x-1)/5*4 ? ? print(x)
實例081:求未知數(shù)
題目:809??=800??+9?? 其中??代表的兩位數(shù), 809??為四位數(shù),8??的結(jié)果為兩位數(shù),9??的結(jié)果為3位數(shù)。求??代表的兩位數(shù),及809*??后的結(jié)果。
a = 809 for i in range(10,100): ? ? b = i * a ? ? if b >= 1000 and b <= 10000 and 8 * i < 100 and 9 * i >= 100: ? ? ? ? print(b,' = 800 * ', i, ' + 9 * ', i) for i in range(10,100): ? ? if 8*i>99 or 9*i<100: ? ? ? ? continue ? ? if 809*i==800*i+9*i: ? ? ? ? print(i) ? ? ? ? break
實例082:八進制轉(zhuǎn)十進制
題目:八進制轉(zhuǎn)換為十進制
n=eval('0o'+str(int(input('八進制輸入:')))) print(n)
實例083:制作奇數(shù)
題目:求0—7所能組成的奇數(shù)個數(shù)。
程序分析:
- 組成1位數(shù)是4個。1,3,5,7結(jié)尾
- 組成2位數(shù)是7*4個。第一位不能為0
- 組成3位數(shù)是784個。中間隨意
- 組成4位數(shù)是788*4個。
if __name__ == '__main__': ? ? sum = 4 ? ? s = 4 ? ? for j in range(2,9): ? ? ? ? print (sum) ? ? ? ? if j <= 2: ? ? ? ? ? ? s *= 7 ? ? ? ? else: ? ? ? ? ? ? s *= 8 ? ? ? ? sum += s ? ? print('sum = %d' % sum)
實例084:連接字符串
題目:連接字符串。
delimiter = ',' mylist = ['Brazil', 'Russia', 'India', 'China'] print(delimiter.join(mylist))
實例085:整除
題目:輸入一個奇數(shù),然后判斷最少幾個 9 除于該數(shù)的結(jié)果為整數(shù)。
程序分析:999999 / 13 = 76923。
if __name__ == '__main__': ? ? zi = int(input('輸入一個數(shù)字:')) ? ? n1 = 1 ? ? c9 = 1 ? ? m9 = 9 ? ? sum = 9 ? ? while n1 != 0: ? ? ? ? if sum % zi == 0: ? ? ? ? ? ? n1 = 0 ? ? ? ? else: ? ? ? ? ? ? m9 *= 10 ? ? ? ? ? ? sum += m9 ? ? ? ? ? ? c9 += 1 ? ? print ('%d 個 9 可以被 %d 整除 : %d' % (c9,zi,sum)) ? ? r = sum / zi ? ? print ('%d / %d = %d' % (sum,zi,r))
實例086:連接字符串II
題目:兩個字符串連接程序。
a='guangtou' b='feipang' print(b+a)
實例087:訪問類成員
題目:回答結(jié)果(結(jié)構(gòu)體變量傳遞)。
if __name__ == '__main__': ? ? class student: ? ? ? ? x = 0 ? ? ? ? c = 0 ? ? def f(stu): ? ? ? ? stu.x = 20 ? ? ? ? stu.c = 'c' ? ? a= student() ? ? a.x = 3 ? ? a.c = 'a' ? ? f(a) ? ? print(a.x,a.c)
實例088:打印星號
題目:讀取7個數(shù)(1—50)的整數(shù)值,每讀取一個值,程序打印出該值個數(shù)的*。
for i in range(3): ? ? print('*'*int(input('input a number: ')))
實例089:解碼
題目:某個公司采用公用電話傳遞數(shù)據(jù),數(shù)據(jù)是四位的整數(shù),在傳遞過程中是加密的,加密規(guī)則如下:每位數(shù)字都加上5,然后用和除以10的余數(shù)代替該數(shù)字,再將第一位和第四位交換,第二位和第三位交換。
n=input() n = str(n) a=[] for i in range(4): ? ? a.append((int(n[i])+5)%10) a[0],a[3]=a[3],a[0] a[1],a[2]=a[2],a[1] print ("".join('%s' %s for s in a))
實例090:列表詳解
題目:列表使用實例。
#list ? #新建列表 ? testList=[10086,'中國移動',[1,2,4,5]] ? #訪問列表長度 ? print (len(testList) ?) #到列表結(jié)尾 ? print (testList[1:]) #向列表添加元素 ? testList.append('i\'m new here!') ? print (len(testList) ?) print (testList[-1] ?) #彈出列表的最后一個元素 ? print (testList.pop(1) ?) print (len(testList) ?) print (testList ?) #list comprehension ? #后面有介紹,暫時掠過 ? matrix = [[1, 2, 3], ? [4, 5, 6], ? [7, 8, 9]] ? print (matrix ?) print (matrix[1] ?) col2 = [row[1] for row in matrix]#get a ?column from a matrix ? print (col2 ?) col2even = [row[1] for row in matrix if ?row[1] % 2 == 0]#filter odd item ? print (col2even)
實例091:time模塊
題目:時間函數(shù)舉例1。
if __name__ == '__main__': ? ? import time ? ? print (time.ctime(time.time())) ? ? print (time.asctime(time.localtime(time.time()))) ? ? print (time.asctime(time.gmtime(time.time())))
實例092:time模塊II
題目:時間函數(shù)舉例2。
程序分析:如何浪費時間。
if __name__ == '__main__': ? ? import time ? ? start = time.time() ? ? for i in range(3000): ? ? ? ? print(i) ? ? end = time.time() ? ? print (end - start)
實例093:time模塊III
題目:時間函數(shù)舉例3。
程序分析:如何浪費時間。
if __name__ == '__main__': ? ? import time ? ? start = time.clock() ? ? for i in range(100): ? ? ? ? print(i) ? ? end = time.clock() ? ? print('different is %6.3f' % (end - start))
實例094:time模塊IV
題目:時間函數(shù)舉例4。
程序分析:如何浪費時間。
if __name__ == '__main__': ? ? import time ? ? import random ? ? play_it = input('do you want to play it.(\'y\' or \'n\')') ? ? while play_it == 'y': ? ? ? ? c = input('input a character:\n') ? ? ? ? i = random.randint(0,2**32) % 100 ? ? ? ? print ('please input number you guess:\n') ? ? ? ? start = time.clock() ? ? ? ? a = time.time() ? ? ? ? guess = int(input('input your guess:\n')) ? ? ? ? while guess != i: ? ? ? ? ? ? if guess > i: ? ? ? ? ? ? ? ? print('please input a little smaller') ? ? ? ? ? ? ? ? guess = int(input('input your guess:\n')) ? ? ? ? ? ? else: ? ? ? ? ? ? ? ? print('please input a little bigger') ? ? ? ? ? ? ? ? guess = int(input('input your guess:\n')) ? ? ? ? end = time.clock() ? ? ? ? b = time.time() ? ? ? ? var = (end - start) / 18.2 ? ? ? ? print (var) ? ? ? ? # print 'It took you %6.3 seconds' % time.difftime(b,a)) ? ? ? ? if var < 15: ? ? ? ? ? ? print ('you are very clever!') ? ? ? ? elif var < 25: ? ? ? ? ? ? print ('you are normal!') ? ? ? ? else: ? ? ? ? ? ? print ('you are stupid!') ? ? ? ? print ('Congradulations') ? ? ? ? print ('The number you guess is %d' % i) ? ? ? ? play_it = input('do you want to play it.')
實例095:轉(zhuǎn)換時間格式
題目:字符串日期轉(zhuǎn)換為易讀的日期格式。
程序分析:看看就得了,dateutil
是個第三方庫。
from dateutil import parser dt = parser.parse("Aug 28 2015 12:00AM") print (dt)
實例096:計算復(fù)讀次數(shù)
題目:計算字符串中子串出現(xiàn)的次數(shù)。
s1='xuebixuebixuebixuebixuebixuebixuebixue' s2='xuebi' print(s1.count(s2))
實例097:磁盤寫入
題目:從鍵盤輸入一些字符,逐個把它們寫到磁盤文件上,直到輸入一個 # 為止。
if __name__ == '__main__': ? ? from sys import stdout ? ? filename = input('輸入文件名:\n') ? ? fp = open(filename,"w") ? ? ch = input('輸入字符串:\n') ? ? while ch != '#': ? ? ? ? fp.write(ch) ? ? ? ? stdout.write(ch) ? ? ? ? ch = input('') ? ? fp.close()
實例098:磁盤寫入II
題目:從鍵盤輸入一個字符串,將小寫字母全部轉(zhuǎn)換成大寫字母,然后輸出到一個磁盤文件"test"中保存。
if __name__ == '__main__': ? ? fp = open('test.txt','w') ? ? string = input('please input a string:\n') ? ? string = string.upper() ? ? fp.write(string) ? ? fp = open('test.txt','r') ? ? print (fp.read()) ? ? fp.close()
實例099:磁盤讀寫
題目:有兩個磁盤文件A和B,各存放一行字母,要求把這兩個文件中的信息合并(按字母順序排列), 輸出到一個新文件C中。
if __name__ == '__main__': ? ? import string ? ? fp = open('test1.txt') ? ? a = fp.read() ? ? fp.close() ? ? fp = open('test2.txt') ? ? b = fp.read() ? ? fp.close() ? ? fp = open('test3.txt','w') ? ? l = list(a + b) ? ? l.sort() ? ? s = '' ? ? s = s.join(l) ? ? fp.write(s) ? ? fp.close()
實例100:列表轉(zhuǎn)字典
題目:列表轉(zhuǎn)換為字典。
i = ['a', 'b'] l = [1, 2] print (dict(zip(i,l)))
到此這篇關(guān)于100 個 Python 小例子(練習(xí)題四)的文章就介紹到這了,更多相關(guān) Python練習(xí)題內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!
相關(guān)文章
Python+Pyecharts實現(xiàn)散點圖的繪制
散點圖是指在回歸分析中,數(shù)據(jù)點在直角坐標系平面上的分布圖,散點圖表示因變量隨自變量而變化的大致趨勢,據(jù)此可以選擇合適的函數(shù)對數(shù)據(jù)點進行擬合。本文將利用Python Pyecharts實現(xiàn)散點圖的繪制,需要的可以參考一下2022-06-06利用Python進行時間序列數(shù)據(jù)分析與可視化的代碼示例
隨著時間序列數(shù)據(jù)在金融、氣象、生態(tài)等領(lǐng)域的廣泛應(yīng)用,利用Python進行時間序列數(shù)據(jù)分析和可視化已成為重要的技能之一,本文將介紹如何使用Python進行時間序列數(shù)據(jù)分析和可視化,并給出相應(yīng)的代碼示例,需要的朋友可以參考下2023-11-11Django集成富文本編輯器summernote的實現(xiàn)步驟
在最近的項目中小編使用了這個富文本編輯器,選擇它的主要原因是配置非常簡單,默認支持普通用戶上傳圖片(不像ckeditor默認只有staff user才能上傳圖片。如果要讓普通用戶上傳圖片,還需修改源碼裝飾器)?,F(xiàn)在讓我們來看看如何使用這個富文本編輯器2021-05-05Python調(diào)用API接口實現(xiàn)人臉識別
本文主要介紹了Python調(diào)用API接口實現(xiàn)人臉識別,文中通過示例代碼介紹的非常詳細,對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-02-02詳解Python手寫數(shù)字識別模型的構(gòu)建與使用
這篇文章主要為大家詳細介紹了Python中手寫數(shù)字識別模型的構(gòu)建與使用,文中的示例代碼簡潔易懂,對我們學(xué)習(xí)Python有一定的幫助,需要的可以參考一下2022-12-12Windows下的Jupyter Notebook 安裝與自定義啟動(圖文詳解)
這篇文章主要介紹了Windows下的Jupyter Notebook 安裝與自定義啟動(圖文詳解),需要的朋友可以參考下2018-02-02解決python中安裝serial及No module named ‘serial.too
這篇文章主要介紹了解決python中安裝serial及No module named ‘serial.tools‘等問題,具有很好的參考價值,希望對大家有所幫助,如有錯誤或未考慮完全的地方,望不吝賜教2023-09-09Python實現(xiàn)基本Socket服務(wù)端與客戶端通信的完整代碼
這篇文章主要介紹了Python實現(xiàn)基本Socket服務(wù)端與客戶端通信,分步詳解與完整代碼都有,按需所求即可,對Python Socket服務(wù)端與客戶端通信相關(guān)知識感興趣的朋友一起看看吧2023-06-06Python中PyQt5可視化界面通過拖拽來上傳文件的實現(xiàn)
本文主要介紹了Python中PyQt5可視化界面通過拖拽來上傳文件的實現(xiàn),通過構(gòu)建一個可接受拖拽的區(qū)域,并重寫相關(guān)事件處理函數(shù),可以方便地實現(xiàn)文件上傳功能,具有一定的參考價值,感興趣的可以了解一下2023-12-12