如何在列表中查找位置?

2 投票
2 回答
8323 浏览
提问于 2025-04-17 03:03

我觉得这个问题可能很基础(但我试着在谷歌和StackOverflow上搜索都没找到答案)。

我有一个列表:[1, 2, 3, 4]

我想知道这个列表中数字3的位置在哪里……但是我不想用循环一项一项地去查找整个列表。这样做可以吗?因为我现在正在处理一个非常大的列表,想尽量减少遍历整个列表的次数。

这样做可以吗?

2 个回答

2

这真的是个非常基础的问题。你应该查一下文档,比如这里:http://docs.python.org/library/stdtypes.html#sequence-types-str-unicode-list-tuple-bytearray-buffer-xrange

所以你的解决方案是:

[1,2,3,4].index(3)
# 2

这里的2是索引,也就是说:

[1,2,3,4][2]
# 3
5
[1, 2, 3, 4].index(3) # --> 2

.index() 方法如果找不到你想要的值,就会报错,叫做 IndexError。

要记住,如果你在很大的列表上频繁使用 .index() 来查找,这个过程可能会非常慢——因为 Python 需要像你一样,逐个遍历列表来查找。

撰写回答