1. 程式人生 > >進入python的世界-killeri

進入python的世界-killeri

一、python有簡單的賦值,如x= 1
二、序列賦值,如 a, b, c = 1, 2, 3 或者[a, b, c] = 1, 2, 3 又或者 (a, b, c) =1, 2, 3
序列賦值要求等號兩邊都是序列,變數的序列和值的序列,然後序列長度相等,也就是序列值一一對應
還可以進行巢狀賦值:
((a,b),c) = [[1, 2], 3]
這樣a = 1, b=2, c=3.就是這麼神奇。
對於for語句,序列賦值和巢狀賦值好像很有用:

for (a, b, c) in [(1, 2, 3),(4, 5, 6), (7, 8, 9)]:
	print(a,b,c)
	# a取值為1,4,7,相應的b,c取值。

三、python中還有比較強大的序列解包賦值:
一個列表賦給了帶星號的名稱, 該列表收集了值序列中沒有賦值給其他變數的所有項。
有兩個要求:
(一)、帶星號的變數必須在一個變數序列中
(二)、帶星號變數最終一定只一個列表

 a, *b, c = "spam"
 # a = 's', c = 'm', b = ['p', 'a']
 *b = [1, 2,3]
 # 是錯誤的,見上面第一條
 *b, = [1, 2, 3]  (加了一個逗號)
 # 是正確的,b = [1, 2, 3]