前言
将多个以逗号分隔的值赋给一个变量时,多个值被组包成一个元组类型
将一个元组赋给多个变量时,会解包成多个值,然后分别将其赋给相应的变量
一、组包
组包:自动操作,当等号右边有多个数据的时候,会自动包装成为元组
a = 1, 2, 3
print(type(a), a)
# <class 'tuple'> (1, 2, 3)
二、解包
解包就是把一个容器拆开、分解,Python中解包是自动完成的
# 解包
i, j, k = a
print(i, j, k)
# 1 2 3
三、函数调用解包
def jiebao(a, b, c):
print(a, b, c)
jiebao(*(1, 2, 3)) #元组类型解包,一个*号
jiebao(**{"a": 1,"b": 2,"c": 3})#字典类型解包,两个**号
总结
- 组包是将多个值赋给一个变量,自动组成的是元组
- 自动解包支持一切可迭代对象
- 函数调用时,可以用*或者**解包可迭代对象,作为参数传递