我希望在赋值语句的右侧使用元组解包:
>>> a = [3,4]
>>> b = [1,2,*a]
File "<stdin>", line 1
SyntaxError: can use starred expression only as assignment target
当然,我可以做:
>>> b = [1,2]
>>> b.extend(a)
>>> b
[1, 2, 3, 4]
但我认为这很繁琐。我错过了什么吗?有更简单的方法吗?是否计划实现这个功能?或者明确没有将其包含在语言中的原因是什么?
问题的一部分在于所有容器类型都使用期望可迭代对象的构造函数,并且不接受*args参数。我可以创建子类,但是这会向脚本中引入一些非Python式的噪音,而其他人需要阅读。