序列解包
可以用於元組、列表、字典
。序列解包可以讓我們方便的對多個變數賦值。
-1]# 也就是以下 效果 類似。
in [35]
:[[a,b]
,[c,d]]=
[[1,
2],[
3,4]
]in [36]
: aout[36]
:1in [37]
: bout[37]
:2in [38]
: cout[38]
:3in [39]
: dout[39]
:4序列解包用於
字典
時,預設是對「鍵」進行操作; 如果需要對鍵值對
操作,則需要使用items()
;如果需要對「值」進行操作,則需要使用values()
;>>
> s =
>>
> name,age,job=s #預設對鍵進行操作
>>
> name
'name'
>>
> name,age,job=s.items(
)#對鍵值對進行操作
>>
> name
('name'
,'onepis'
)>>
> name,age,job=s.values(
)#對值進行操作
>>
> name
'onepis'
in [45]
: a,b,c=
map(
str,
range(3
))# 另外 序列解包 也可以直接用於生成器。 和 for 迴圈
in [46]
: aout[46]
:'0'
in [47]
: bout[47]
:'1'
in [48]
: cout[48]
:'2'
# 另外 序列解包 也可以直接用於生成器。 和 for 迴圈
# enumerate 返回的 是 乙個 元組 裡面 包含 乙個 索引 。 乙個 元素
# 解包 到 i 和 v 上
in [53]
:*((i,v)
for i,v in
enumerate
(range(3
))),
out[53]
:((0
,0),
(1,1
),(2
,2))
in [55]
: a=[3
,4,5
]# 這樣 換個變數 來測試 。 更直觀一點
in [56]
:*(i for i in
enumerate
(a))
,# 後面 加乙個 逗號。 利用 元組的特性來 解包。
# 列表也可以這樣解包。 但是 返回的 依然是元組。
out[56]
:((0
,3),
(1,4
),(2
,5))
# 最簡單的測試是 以下
in [58]
:*range(3
),out[58]
:(0,
1,2)
Python筆記(八)序列解包
是指對多個變數進行賦值的簡潔操作,把乙個序列或者可迭代物件中的元素進行賦值給多個變數,要求等號左邊的值的數量和等號右邊值的數量必須一致 列表,元組,字典,集合 可以使用序列解包功能對多個變數同時進行賦值 x,y,z 1,2,3 多個變數進行同時賦值 tuple2 true,2,y x,y y,x 交...
Python3 序列解包
自 序列解包是 python 3.0 之後才有的語法 什麼是序列解包呢?先看乙個例子 a,b,c 1,2,3 a 1 b 2 c 3 這種方法並不限於列表和元組,而是適用於任意序列型別 甚至包括字串和位元組序列 只要賦值運算子左邊的變數數目與序列中的元素數目相等,你都可以用這種方法將元素序列解包到另...
Python學習之路(1) 序列解包
序列解包 python中一次給多個變數賦多個值 基本方法就是一次性將乙個元組賦值給多個變數 序列解包 value 1,2,3 print type value print value x,y,z value print x,y,z print x print y print z print type...