在Ruby中我可以做到:
irb(main):002:0> [1, 2, 3, *[4, 5], 6, 7]
=> [1, 2, 3, 4, 5, 6, 7]
Run Code Online (Sandbox Code Playgroud)
是否有Python等价物?Ruby语法在Python中无效:
>>> l = [1, 2, 3, *[4, 5], 6, 7]
File "<stdin>", line 1
l = [1, 2, 3, *[4, 5], 6, 7]
^
SyntaxError: invalid syntax
Run Code Online (Sandbox Code Playgroud)
顺便说一句,我知道我可以做下面两个选项,但我更喜欢Ruby方式.
Python - 选项1
l = [1, 2, 3]
l += [4, 5]
l += [6, 7]
Run Code Online (Sandbox Code Playgroud)
Python - 选项2
l = [1, 2, 3, 6, 7]
l = l[:3] + [4, 5] + l[3:]
Run Code Online (Sandbox Code Playgroud)
升级你的Python.那是现在的有效语法.它自3.5起有效.
>>> [1, 2, *[3, 4], 5]
[1, 2, 3, 4, 5]
Run Code Online (Sandbox Code Playgroud)
如果您坚持使用旧版本,则没有相应的版本.
| 归档时间: |
|
| 查看次数: |
63 次 |
| 最近记录: |