使用_可以转义for循环中的多个值

时间:2015-11-10 12:14:20

标签: python python-2.7 metasyntactic-variable

说我有以下数据结构:

 a++;

input = [(1,2,3,4,5), (1,2,3,4), (1,2,3)] 循环中,我想一次只迭代每个元组元素中的前三个元素,而不必担心元组有多大。

我知道我可以使用for来实现这一点,但有了它我必须指定我打算丢弃多少个值。

有没有办法在不事先知道有问题的元组有多大的情况下实现这一目标?

我知道我能做到:

_

但有没有办法只用一个for i, j, k, _, _ in input: .... 逃脱?如果每个子元素的大小不是5,则上述情况将失败(如果太小,我将获得_或如果太大则会need more than 4 values to unpack

我出于好奇而问这个问题,我知道我可以通过以下方式单独解开这些元素:

too many values to unpack

我使用的是Python 2.7.6。

1 个答案:

答案 0 :(得分:3)

你可以在Python 3.x中做for i, j, k, *_ in input: