首页 > 解决方案 > arg、kwarg 拆包规则

问题描述

(kw)arg解包可以用到的地方有哪些?

例如:

>>> a={1:2}
>>> b={3:4}

# ok
>>> {**a,**b}
{1: 2, 3: 4}

# ok
>>> [*a]
>>> [1]

# error
>>> (*a)
SyntaxError: can't use starred expression here

加星标的表情遵守的所有“规则”是什么?

标签: pythonpython-3.x

解决方案


拆包也适用于元组。但是,单项元组(也称为单例)必须在括号中的表达式末尾包含逗号,否则括号将被视为简单分组,因此请改为:

(*a,)

推荐阅读