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

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

python列表之索引及len()函数的更多相关文章

  1. python列表的一些常用方法以及函数

    学习到了一些关于python列表的新知识,自己整理了一下,方便大家参考: #!/usr/bin/env python # _*_ coding:utf-8 _*_ # File_type:列表的常用操 ...

  2. python列表和索引--7

    备注:列表元素索引下限从0开始,列表用[ ]表示

  3. python列表中enumerate和zip函数用法

    enumerate: 定义:enumerate() 函数用于将一个可遍历的数据对象(如列表.元组或字符串)组合为一个索引序列,同时列出数据和数据下标 例子: list1 =[89,98,00,75,6 ...

  4. python列表的索引与切片

    <1>.python的列表 索引方式: 例如,list1 = ['张三','男','33','江苏','硕士','已婚',['身高178','体重72']] 1.正向单索引 print(l ...

  5. Python列表lists索引关于字符串小纪

    看的出'字符串列表'中的空格也是计算在内的

  6. list(range())--------range创建一个list列表 遍历索引range(len()) 和 list(range())创建列表

    lst = list(range(15,26)) #注,list(range())用的是小括号哦print(lst)

  7. python列表元组

    python列表元组 索引 切片 追加 删除 长度 循环 包含   定义一个列表 my_list = []     my_list = list()   my_list = ['Michael', ' ...

  8. python第七篇:Python 列表操作详解

    Python列表操作详解 list函数 list()   #生成一个空的列表 list(iterable)  #用可迭代对象初始化一个列表 列表的 and 运算和 or 运算 列表and运算 > ...

  9. Python 简明教程 ---10,Python 列表

    微信公众号:码农充电站pro 个人主页:https://codeshellme.github.io 程序 = 算法 + 数据结构 -- Nicklaus Wirth 目录 从这句话程序 = 算法 + ...

  10. Python列表脚本操作符

    Python列表脚本操作符: len(列表名): 查看列表长度 # 使用 len(列表名) 方法查看列表长度 lst = [1,2,3,4] print(len(lst)) # # 注:嵌套列表算一个 ...

随机推荐

  1. 在不修改代码情况下解决 Chrome 浏览器跨域

    前言: 在前后台分离的项目,跨域是经常遇到的问题了.是实际解决方案中,大部分采用服务端配置,而如果只是调试,可以通过配置 Chrome 浏览器实现跨域,以下以 NodeJs 服务为例. 开始: 1. ...

  2. HTTPS 是这样握手的

    HTTP协议默认是明文传输,存在一定的安全隐患,容易被中间人窃听和攻击,在 加密解决HTTP协议带来的安全问题 中提到使用哈希.对称加密.非对称加密等方式对数据加密,能解决数据安全的问题. 以上加密方 ...

  3. cdn 引入的资源需要通过 externals 排除打包哦~

    cdn 指的是通过相互连接的网络系统,使用最靠近用户的服务器将音乐.图片等资源以高效率和低成本的方式将内容传递给用户. 在 webpack 中,我们可能会将引入的第三方资源会编译成单独的文件,作为静态 ...

  4. C# OpenCVSharp图像入门_给绿幕图片视频加背景

    OpenCV的全称是Open Source Computer Vision Library,是一个跨平台的计算机视觉库.OpenCV是由英特尔公司发起并参与开发,以BSD许可证授权发行,可以在商业和研 ...

  5. 并发工具类Phaser

    前言 在面试这一篇我们介绍过CountDownLatch和CyclicBarrier,它们都是jdk1.5提供的多线程并发控制类,内部都是用AQS这个同步框架实现. 在我们的实际项目中,有很多场景是需 ...

  6. [HDCTF2019]Maze 反汇编-花指令处理

    这是一道迷宫花指令加upx脱壳处理的题 先介绍花指令 一. 概述 花指令是对抗反汇编的有效手段之一,正常代码添加了花指令之后,可以破坏静态反汇编的过程,使反汇编的结果出现错误.错误的反汇编结果会造成破 ...

  7. Python 基础面试第四弹

    1. Python中常用的库有哪些,作用分别是什么 requests: requests 是一个用于发送 HTTP 请求的库,它提供了简单而优雅的 API,可以轻松地发送 GET.POST.PUT.D ...

  8. C++算法之旅、04 基础篇 | 第一章

    常用代码模板1--基础算法 - AcWing ios::sync_with_stdio(false) 提高 cin 读取速度,副作用是不能使用 scanf 数据输入规模大于一百万建议用scanf 快速 ...

  9. 2023-09-01:用go语言编写。给出两个长度均为n的数组, A = { a1, a2, ... ,an }, B = { b1, b2, ... ,bn }。 你需要求出其有多少个区间[L,R]

    2023-09-01:用go语言编写.给出两个长度均为n的数组, A = { a1, a2, ... ,an }, B = { b1, b2, ... ,bn }. 你需要求出其有多少个区间[L,R] ...

  10. 如何使用Java + React计算个人所得税?

    前言 在报表数据处理中,Excel公式拥有强大而多样的功能,广泛应用于各个业务领域.无论是投资收益计算.财务报表编制还是保险收益估算,Excel公式都扮演着不可或缺的角色.传统的做法是直接依赖Exce ...