當前位置:首頁 » 編程語言 » python編程練習題

python編程練習題

發布時間: 2023-01-07 09:43:39

1. 求解一道python編程

斐波那契數列自第三個數開始,每個數均為之前兩個數的和。

至少有兩種方法來實現它。

最常見的利用迭代的方法,其核心思路是

fib(n) =fib(n-1) +fib(n-2)

而在n<2時直接,沒有n-2,因此直接返回1:

def fib(num): return 1 if n<2 else fib(num-1) + fib(num-2)

這是一種很簡單的實現。在階梯數不大時,它很好用。當階梯數很大時,因為二次手迭代,會比較慢。因此,可以在計算中保存中間值(1至n-1的階梯數)來減少計算量:

這種方式在計算階梯數10000時就可以保持不錯的性能。如果需要多次計算該數列,則可以利用對象來保持這個中間值列表,下列代碼中,Fibonaci實例只計算未曾計算的階梯數,在重復調用時它更具優勢:

class Fibonaci(object):

....history=[1, 1]

....def cacl(self, num):

........while len(self.history) <= num:

............self.history.append(self.history[-1] + self.history[-2])

........returnself.history[num]

if __name__ == '__main__':

....fib =Fibonaci()

....print(fib.calc(100))

....print(fib.calc(32))

....print(fib.calc(10000))

2. Python編程題:輸入圓半徑,輸出圓面積

R=eval(input("請輸入圓的半徑:"))

pi=3.14

S=pi*R**2

print("圓的面積是:{}".format(S))

如果需要更精確的面積,可調用math庫,即可獲得更精確的答案。

(2)python編程練習題擴展閱讀:

eval() 函數用來執行一個字元串表達式,並返回表達式的值。

以下是 eval() 方法的語法:

eval(expression[, globals[, locals]])

參數:

expression -- 表達式。

globals -- 變數作用域,全局命名空間,如果被提供,則必須是一個字典對象。

locals -- 變數作用域,局部命名空間,如果被提供,可以是任何映射對象。

參考資料來源:網路-eval()



3. Python編程題怎麼寫

Python編程題寫法:第一個問題使用排序演算法,有很多種,可以使用簡單一點的冒泡排序。第二個問題為了確保是輸入了5個整數,可以使用while循環+try。

假設data.txt中所有的號碼都在一行,沒有換行,寫入到data_asc.txt中時,假設每行一個,原文件中是否有換行;寫入到data_asc.txt文件中時,是一行一個;還是所有的都在一行,然後用英文逗號隔開。

Python

是完全面向對象的語言。函數、模塊、數字、字元串都是對象。並且完全支持繼承、重載、派生、多繼承,有益於增強源代碼的復用性。Python支持重載運算符和動態類型。相對於Lisp這種傳統的函數式編程語言,Python對函數式設計只提供了有限的支持。有兩個標准庫(functools, itertools)提供了Haskell和Standard ML中久經考驗的函數式程序設計工具。

4. 求一道python編程題

time="13時4分20秒"

i=time.find("時")

hour=time[:i]

j=time.find("分")

minute=time[i+1:j]

k=time.find("秒")

second=time[j+1:k]

print('{0:0>2s}:{1:0>2s}:{2:0>2s}'.format(hour,minute,second))

5. Python練習題

1
print("hi, 「」「how are you」」」, I』m fine and you")

2
a, b= map(int, input().split())
r=a//b
m=a%b

6. python編程題


mons = [31, 28, 31, 30, 31, 30, 31, 31, 30, 31, 30, 31]



def get_days(mon, day):

if mon == 1:

return mons[0], day

else:

count = sum(mons[:mon-1])

count = count + day

return mons[mon - 1], count



mon = int(input("請輸入月份:"))

day = int(input("請輸入號數:"))

result = get_days(mon, day)

print("{}月有{}天。".format(mon, result[0]))

print("{}月{}號是該年的第{}天".format(mon, day, result[1]))

7. python編程題目,求解!!!

num = 0
L = ['Alice', 66, 'Bob', True, 'False', 100]
for item in L:
num = num + 1
if num % 2 != 0:
continue
print(item)

8. Python編程題求助

該答案為組合數學中著名的卡特蘭數,其通式為C(2n,n)-C(2n,n-1)

這里採用遞推關系求解,即動態規劃的方法

設n對父子有d[n]種出場策略,注意初值d[0]=1

因為每個孩子前面必有一個父親與之對應

對於i對父子,遍歷第j個孩子,該孩子前面有j-1個孩子,對應d[j-1]種出場策略

後面有i-j個孩子,對應d[i-j]種出場策略,則d[i]+=d[j-1]*d[i-j],最終d[n]即為所求

python代碼如下:

n = int(input())

d = [0] * (n+1)

d[0] = 1

for i in range(n+1):

for j in range(i+1):

d[i] += d[j-1] * d[i-j]

print(d[n])

運行結果如下:

望採納~

9. Python編程練習問題,望大神解答!!!

#coding=utf8
importxlwt
data={"A":[(1,2,3),(4,5,6)],"B":[(7,8,9),(10,11,12)],"C":[(13,14,15),(16,17,18)],'D':[(19,20,21,22),(23,24,25,26),(27,28,29,30)]}
wb=xlwt.Workbook()
sheet_index=wb.add_sheet(u"目錄")
sheet_index.write(0,0,u'用戶編號')
index=1
forkindata:
sheet_index.write(index,0,k)
index+=1
index=0
forkindata:
sheet=wb.add_sheet("%s"%k)
sheet.write(0,0,u'名字')
fordinrange(0,len(data[k][0])):
sheet.write(0,d+1,u'數值'+str(d+1))
fordinrange(0,len(data[k])):
sheet.write(d+1,0,k)
forvalue_indexinrange(0,len(data[k][d])):
sheet.write(d+1,value_index+1,data[k][d][value_index])
wb.save("test.xls")

熱點內容
安卓手機之王是哪個手機 發布:2025-07-07 21:44:30 瀏覽:613
安卓照片存儲位置 發布:2025-07-07 21:31:58 瀏覽:964
kingcmsphp 發布:2025-07-07 21:31:49 瀏覽:392
微信的鎖屏密碼是什麼 發布:2025-07-07 21:28:52 瀏覽:757
樹莓派自帶ftp開啟 發布:2025-07-07 21:11:41 瀏覽:51
智慧樹用腳本會怎麼樣 發布:2025-07-07 21:05:48 瀏覽:516
隨機啟動腳本 發布:2025-07-05 16:10:30 瀏覽:536
微博資料庫設計 發布:2025-07-05 15:30:55 瀏覽:32
linux485 發布:2025-07-05 14:38:28 瀏覽:310
php用的軟體 發布:2025-07-05 14:06:22 瀏覽:760