59 lines
1.7 KiB
Markdown
59 lines
1.7 KiB
Markdown
|
---
|
|||
|
title: List Index Method
|
|||
|
localeTitle: 列表索引方法
|
|||
|
---
|
|||
|
## 列表索引方法
|
|||
|
|
|||
|
在列表数据结构附带的许多函数中, `index()`返回列表中元素的第一个出现/索引,该列表作为函数的参数给出。
|
|||
|
|
|||
|
列表是最基本的Python数据结构,并按顺序存储值列表(与字典相比,哪个顺序无关紧要)。我们通过数字索引检索项目。
|
|||
|
|
|||
|
请记住,索引从0开始,或者第一个元素被视为0索引,让我们看看一些例子。
|
|||
|
|
|||
|
#### 用法示例:
|
|||
|
|
|||
|
```py
|
|||
|
numbers = [1, 2, 2, 3, 9, 5, 6, 10]
|
|||
|
words = ["I", "love", "Python", "I", "love"]
|
|||
|
|
|||
|
print(numbers.index(9))
|
|||
|
print(numbers.index(2))
|
|||
|
print(words.index("I"))
|
|||
|
print(words.index("am"))
|
|||
|
```
|
|||
|
|
|||
|
##### 输出:
|
|||
|
|
|||
|
```py
|
|||
|
4
|
|||
|
1
|
|||
|
0
|
|||
|
Traceback (most recent call last):
|
|||
|
File "<stdin>", line 1, in <module>
|
|||
|
ValueError: 'am' is not in list
|
|||
|
```
|
|||
|
|
|||
|
这里第一个输出非常明显,但第二个和第三个输出最初可能看起来很混乱。但是请记住`index()`返回元素的第一次出现,因此在这种情况下, `1`和`0`是索引,其中`2`和`"I"`首先出现分别在列表中。
|
|||
|
|
|||
|
此外,如果在列表中找不到元素,则返回`ValueError` ,就像在`words`列表中索引`"am"`的情况一样。
|
|||
|
|
|||
|
#### 可选参数:
|
|||
|
|
|||
|
您还可以使用可选参数将搜索限制为列表的特定子序列,如下例所示:
|
|||
|
|
|||
|
```py
|
|||
|
words = ["I","am", "a", "I", "am", "Pythonista"]
|
|||
|
|
|||
|
print(words.index("am",2,5))
|
|||
|
```
|
|||
|
|
|||
|
##### 输出:
|
|||
|
```
|
|||
|
4
|
|||
|
```
|
|||
|
|
|||
|
这里虽然在索引2(包括)和5(不包括)之间搜索元素,但返回的索引是相对于完整列表的开头而不是start参数计算的。
|
|||
|
|
|||
|
#### 更多信息:
|
|||
|
|
|||
|
`index()`的官方文档可以在[这里](https://docs.python.org/3.6/tutorial/datastructures.html)找到
|