如何只遍历元组的第一个变量

7 投票
5 回答
4890 浏览
提问于 2025-04-16 00:06

在Python中,当你有一个包含元组的列表时,你可以对这些元组进行遍历。比如说,当你有三维坐标点的时候:

for x,y,z in points:
    pass
    # do something with x y or z

那么如果你只想使用第一个变量,或者第一个和第三个变量,Python有没有什么跳过的符号呢?

5 个回答

5

一种常见的方法是用下划线来表示那些不使用的变量:

for x, _, z in points:
    # use x and z

这样做其实和你写的没有什么不同。下划线也是一个普通的变量,就像其他变量一样。不过,这样可以让看你代码的人知道你不打算使用这个变量。

在交互式提示中不建议这样做,因为_在这里有特殊的含义:它代表最后一次运行的语句或表达式的值。

7

是的,那个下划线:

>>> a=(1,2,3,4)
>>> b,_,_,c = a
>>> b,c
(1, 4)

这其实并不是在“跳过”,而是一种约定。带下划线的变量仍然会被赋值:

>>> _
3
8

有没有什么原因让你不想去碰那些你不感兴趣的变量呢?在Python中,有一种常见的用法就是用下划线来表示你不想关注的变量。例如:

for x, _,_ in points:
    print(x)

你需要明白,这只是一个约定,并不会影响程序的性能。

撰写回答