参考:
- 【python小技巧九:*和**用来打包解包的骚操作-哔哩哔哩】 https://b23.tv/hEivTW2
- python有趣的解包用法
https://zhuanlan.zhihu.com/p/33896402
python的打包和解包都用的是*
和**
,而他们的区别在于,打包是将符号用在函数定义中,而解包是将符号用在除了函数定义之外的地方。代码见下:
打包代码:
# 打包
def pack(*args, **kwargs):
print(type(args))
print(type(kwargs))
# print(keyword_place)
print(args[0])
print(kwargs["keyword_place"])
return
pack("Hangzhou", keyword_place="Beijing")
解包代码:
# 解包
config = (0, 10, 2)
for i in range(*config):
print(i)
def unpack(keyword_place="Hangzhou"):
print("key is {}, value is {}".format("keyword_place", keyword_place))
return
place_parameter = {"keyword_place": "Beijing"}
unpack(**place_parameter)