我想知道是否有更好的方法在列表中一次迭代两个项目。我经常使用 Maya,它的一个命令 (listConnections) 返回一个交替值列表。该列表将类似于 [connectionDestination、connectionSource、connectionDestination、connectionSource]。要对这个列表做任何事情,理想情况下我想做类似的事情:
for destination, source in cmds.listConnections():
print source, destination
当然,您可以使用 [::2] 迭代列表中的所有其他项目并枚举和源将是索引 + 1,但是您必须添加对奇数列表和内容的额外检查。
到目前为止,我想出的最接近的事情是:
from itertools import izip
connections = cmds.listConnections()
for destination, source in izip(connections[::2], connections[1::2]):
print source, destination
这不是很重要,因为我已经有了做我想做的事的方法。这似乎是应该有更好的方法的事情之一。