Python中的解包

2021-08-25 14:50:21 字數 1094 閱讀 8844

a,b,c = ['1','2','3']

print(a,b,c)

1 2 3

a,b,c = 

print(a, b, c)

1  2  3

2.python中交換變數值實際也是解包的過程。

a, b = 1, 2

a, b = b, a

print(a, b)

2 1

a, b, *c = [1, 2, 3, 4]

print(a, b, c)

1 2 [3, 4]

在函式呼叫時,你可能會用到兩個符號:* 和 **。

def func(a, b, c):

print(a, b, c)

func(1, 2, 3)

1 2 3

func函式中定義了3個形參引數,呼叫該函式時你可以傳入3個實參,此外你也可以傳入包括乙個包含3個元素的可迭代物件,用*進行解包。

a = ['1', '2', '3']

def func(a, b, c):

print(a, b, c)

func(*a)

1 2 3

在可迭代物件為字典時,乙個*號傳入的實參為key值,兩個**號時傳入的實參為value值。

d = 

def func(a, b, c):

print(a, b, c)

func(*d)

a b c

另:

python中的解包操作

在看別人寫的python 的時候,有時候會看到在變數前面加上乙個 或者是 上網找了一下相關的資料發現這些星號原來是python中的解包操作,相當於將乙個容器中的元素取出來然後分配給不同的變數,下面是我看別人寫的部落格自己的一些理解 1 乙個星號解包 解包可以使用在多個變數賦值或者是函式呼叫中,並且任...

python中 解包的快捷用法

任意長度可迭代物件的元素解包 例如 laowang 18 boy 18800000000 17700000000 16600000000 如果我們只關注姓名和 號碼,我們可以這樣使用 msg ls laowang 18 boy 18800000000 17700000000 16600000000 ...

python 序列解包

當函式或方法返回元組時,將元組中值賦給變數序列中的變數,這個過程就叫做序列解包。1 序列1,2,3被打包到元組values中 values 1,2,3 type values values 1,2,3 2 序列解包,元組values中的值分別被賦給變數序列中的x,y,z x,y,z values p...