作者热门文章
- c - 在位数组中找到第一个零
- linux - Unix 显示有关匹配两种模式之一的文件的信息
- 正则表达式替换多个文件
- linux - 隐藏来自 xtrace 的命令
为什么我不能这样做:
d = [x for x in range(7)]
a, b, c, d, e, f, g = *d
在哪里可以解压?仅在函数的括号之间?
最佳答案
您正在使用 Extended Iterable Unpacking
以错误的方式。
d = [x for x in range(7)]
a, b, c, d, e, f, g = d
print(a, b, c, d, e, f, g)
Where it's possible to unpack? Only between parentheses of a function?
不,
*
提议对可迭代解包语法进行更改,允许指定一个“包罗万象”的名称,该名称将分配一个未分配给“常规”名称的所有项目的列表。
你可以尝试这样的事情:
a, *params = d
print(params)
输出
[1, 2, 3, 4, 5, 6]
通常 *
(Extended Iterable Unpacking) 运算符用于需要将参数传递给函数时。
注意
Extended Iterable Unpacking operator
的 Javascript 等效项称为 spread syntax .
d = [...Array(7).keys()]
console.log(d)
var [a, ...b] = d
console.log(a,b)
关于python - 我怎样才能解压序列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50131152/
我是一名优秀的程序员,十分优秀!