python列表之索引及len()函数

我们在刚开始使用列表的时候,经常会遇到这种错误

list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1[5])

这段代码看上去是没有什么问题的,但是我们注意打印列表的索引

运行代码导致索引错误:

Traceback (most recent call last):
  File "D:\pythonProject\main.py", line 2, in <module>
    print(list_1[5])
IndexError: list index out of range

python试图访问索引5处的元素,但是我们python里的列表元素索引是从0开始的,也就是说我们这个列表里面的最后一个元素的索引为4

那么我们在访问索引5时,就会发现没有这个元素,此时就会报错

当我们想要访问最后一个元素时,为了防止错误,我们可以使用索引-1,这种方法在任何情况下都是可以实现的,即便列表长度发生变化

list_1 = ['one', 'two', 'three', 'four', 'five']
print(list_1[-1])

索引-1总是返回列表最后一个元素,这里是'five':

five

但是注意!!!

如果这个列表是空列表,则这种访问最后一个元素的方式就会报错:

list_1 = []
print(list_1[-1])

列表list_1不包含任何元素,所以python返回索引错误

Traceback (most recent call last):
  File "D:\pythonProject\main.py", line 2, in <module>
    print(list_1[-1])
IndexError: list index out of range

len()

当然,我们还可以使用len()函数

len()可以计算并返回一个列表的长度

list_1 = ['one', 'two', 'three', 'four', 'five']
len_1 = len(list_1)
print(len_1)
print(list_1[len_1-1])

此时len_1的值为列表的长度5,但是别忘了我们索引是从0开始的,所以访问最后一个元素时还要-1

5
five

 

posted @ 2023-09-07 00:27  放氮气的蜗牛  阅读(114)  评论(0编辑  收藏  举报  来源