是否有一系列一次性变量的简写语法?

Boa*_*Boa 2 python-2.7

假设你有这样的情况:

_, _, _, substring_1, _, substring_2 = some_string.split(',')
Run Code Online (Sandbox Code Playgroud)

是否有表示前三个连续下划线的简写方式,表示要丢弃的值?我特别想知道是否存在这样的语法快捷方式,而不是关于完成相同任务的各种方法.

编辑 - 我对Python 2.7特定的答案很感兴趣.

jon*_*rpe 5

您可以使用str.rsplit限制:

>>> s = 'a,b,c,d,e,f'
>>> s.rsplit(',', 3)  # i.e. split on at most three commas, from the right
['a,b,c', 'd', 'e', 'f']
>>> _, d, _, f = s.rsplit(',', 3)
>>> d
'd'
>>> f
'f'
Run Code Online (Sandbox Code Playgroud)

如果你升级到Python 3.x,你可以使用*_吸收任意数量的元素(SyntaxError虽然你会得到2.x):

>>> *_, d, _, f = s.split(',')
>>> d
'd'
>>> f
'f'
Run Code Online (Sandbox Code Playgroud)