我怎样才能迭代元组的第一个变量

Pet*_*mit 6 python loops tuples

在python中,当你有一个元组列表时,你可以迭代它们.例如,当你有3d点时,那么:

for x,y,z in points:
    pass
    # do something with x y or z
Run Code Online (Sandbox Code Playgroud)

如果您只想使用第一个变量,或者第一个和第三个变量,该怎么办?python中有跳过符号吗?

Sil*_*ost 8

是什么阻止你不接触你不感兴趣的变量?在Python中有一个常规的下划线用来表示你不感兴趣的变量.例如:

for x, _,_ in points:
    print(x)
Run Code Online (Sandbox Code Playgroud)

您需要了解这只是一种惯例,与性能无关.

  • @Peter:你不必为你不会使用的变量设置*good*名称. (2认同)

unb*_*eli 7

是的,下划线:

>>> a=(1,2,3,4)
>>> b,_,_,c = a
>>> b,c
(1, 4)
Run Code Online (Sandbox Code Playgroud)

这不是'跳过',只是一个惯例.下划线变量仍然获得分配的值:

>>> _
3
Run Code Online (Sandbox Code Playgroud)


Mar*_*ers 5

执行此操作的常用方法是对未使用的变量使用下划线:

for x, _, z in points:
    # use x and z
Run Code Online (Sandbox Code Playgroud)

这实际上与你所写的不同.下划线是一个像其他任何一样的正常变量.但这表明人们在阅读您的代码时并不打算使用该变量.

不建议在交互式提示中执行此操作,因为_它具有特殊含义:最后一次运行语句/表达式的值.