1)python賦值運算:
今天寫乙個斐波那契函式時,遇到數列前後的推導:
第一部分,常規寫法:
#for 迴圈:
def fbn(num):
a0=0
a1=1
for i in range(num):
a1=a0+a1
print('第'+str(i)+'項'+';a0+a1='+str(a1)+';a0='+str(a0)+';a1='+str(a1))
a0=a1-a0 #特別要注意該處的順序#
return(a1)
fbn(5)
#第0項;a0+a1=1;a0=1;a1=1
#第1項;a0+a1=2;a0=1;a1=2
#第2項;a0+a1=3;a0=2;a1=3
#第3項;a0+a1=5;a0=3;a1=5
#第4項;a0+a1=8;a0=5;a1=8
#while 迴圈:
def fbn_w(num):
a0,a1=0,1
i=0while i < num:
# a1=a0+a1
# print('第'+str(i)+'項'+';a0+a1='+str(a1)+';a0='+str(a0)+';a1='+str(a1))
# a0=a1-a0
# i+=1
a0,a1=a1,a0+a1
#多個物件賦值,先按照加號的優先順序,然後計算等式右邊的,計算完右邊後再依次順序賦值給左邊
print('第'+str(i)+'項'+';a0+a1='+str(a1)+';a0='+str(a0)+';a1='+str(a1))
i+=1
return(a1)
fbn_w(5)
第二部分,生成器寫法,生成器通過呼叫,提公升速度和效率;
適用場景:一邊迴圈一遍呼叫計算;
#while 迴圈生成器:
def fbn_yd(num):
a0,a1=0,1
i=0while i < num:
yield a1
a0,a1=a1,a0+a1
print('第'+str(i)+'項'+';a0+a1='+str(a1)+';a0='+str(a0)+';a1='+str(a1))
i+=1
yd=fbn_yd(5)
#out[3]: next(yd)
for i in yd:
print(i)
python基礎語法 5 賦值技巧
序列解包 x y,z 1,2 3 print x y z 1 2 3 x y y x print x y z 2 1 2 這兩個例子表現出來的意思就是,序列解包。講多喝只的序列解開,然後放到變數的序列中。values 1 2 3 print values 1,2,3 x y z values x 1...
Python之基礎命名規範 變數賦值
1.單行注釋 2.多行注釋 import time 3.命名時有以下禁忌 1 不可數字開頭 2 不可與保留字,關鍵字重合。如何檢視關鍵字?import keyword print keyword.kwlist 例 none,false,true,else,global,return 4.命名法 1 ...
Python基礎語法 多樣的賦值語句
賦值的作用是賦予變數的值,使之能夠參與運算。賦值後該變數才會被比如x只是乙個字母,不能進行加 減 乘 除運算,如果給它賦值後參與運算了。語法格式 變數名 表示式 為賦值號 python中的變數不需要宣告,每個變數在使用之前必須賦值,賦值後該變數才會被建立。在python中,變數沒有型別,所說的 型別...