pythonfor從1開始
Ⅰ python中如何用for語句寫出從1的階乘到20的階乘的加和
def sum_factorial(start, stop):
# 遞歸求階乘
def factorial(n):
if n == 0: return 1
return n * factorial(n-1)
# 生成器解析式生成各個數的階乘,然後再求和
return sum(factorial(i) for i in range(start, stop+1))
# 調用函數,測試代碼
print(sum_factorial(1, 20))
注意:
在不調用庫的情況下,最容易想到的就是循環裡面套循環,不過這樣子佔用時間為O(n^2)。當然你這里也就n=20,兩層循環沒啥問題,不過當n足夠大時,可以考慮用演算法。
遞歸演算法佔用時間為O(n),一個for循環為O(stop+1-start),兩者相加,比兩層循環效率高,當然這也是在n足夠大的時候,才談效率。
Ⅱ python如何用for循環輸出1到100
for循環從1加到100求和sum1=0。
foriinrange(1,101):
ifi%2==0:
sum1=sum1+i
i+=1
print("for--1-100之間偶數的和是:",sum1)。
簡單:Python是一種代表簡單主義思想的語言。閱讀一個良好的Python程序就感覺像是在讀英語一樣。它使你能夠專注於解決問題而不是去搞明白語言本身。
易讀、易維護:風格清晰劃一、強制縮進。
易學:Python極其容易上手,因為Python有極其簡單的說明文檔。
速度快:Python的底層是用C語言寫的,很多標准庫和第三方庫也都是用C寫的,運行速度非常快。
免費、開源:Python是FLOSS(自由/開放源碼軟體)之一。使用者可以自由地發布這個軟體的拷貝、閱讀它的源代碼、對它做改動、把它的一部分用於新的自由軟體中。FLOSS是基於一個團體分享知識的概念。