您好, 欢迎来到 !    登录 | 注册 | | 设为首页 | 收藏本站

元组,列表和集合定义中的星号,字典定义中的双星号

元组,列表和集合定义中的星号,字典定义中的双星号

这是PEP-448:附加解包概述,这是Python 3.5中的新增功能

相关的更改日志位于https://docs.python.org/3/whatsnew/3.5.html#pep-448-additional- unpacking- generalizations中:

PEP 448扩展了*可迭代拆包运算符和**字典拆包运算符的允许使用。现在可以在函数调用中使用任意数量的拆包:

>>>

>>> print(*[1], *[2], 3, *[4, 5])
1 2 3 4 5

>>> def fn(a, b, c, d):
...     print(a, b, c, d)
...

>>> fn(**{'a': 1, 'c': 3}, **{'b': 2, 'd': 4})
1 2 3 4

同样,元组,列表,集合和字典显示允许多次拆包:

>>>

>>> *range(4), 4
(0, 1, 2, 3, 4)

>>> [*range(4), 4]
[0, 1, 2, 3, 4]

>>> {*range(4), 4, *(5, 6, 7)}
{0, 1, 2, 3, 4, 5, 6, 7}

>>> {'x': 1, **{'y': 2}}
{'x': 1, 'y': 2}
其他 2022/1/1 18:30:03 有447人围观

撰写回答


你尚未登录,登录后可以

和开发者交流问题的细节

关注并接收问题和回答的更新提醒

参与内容的编辑和改进,让解决方法与时俱进

请先登录

推荐问题


联系我
置顶