我很想在作业的右侧使用元组解包:
>>> 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 的噪音。