27. 列表的索引取值

文章目录

  • 27. 列表的索引取值
    • 1. 列表的索引
    • 2. 列表索引取值
    • 3. 列表的正索引取值
    • 4. 列表的负索引取值
    • 5. 用列表本身取值
    • 6. 从嵌套列表中取值
    • 7. 课后练习
    • 8. 总结

1. 列表的索引

和字符串一样,列表中的每一个元素也都有一个属于自己的编号,这个编号就是列表的索引。

2. 列表索引取值

通过字符串索引,我们可以取出字符串中的元素。

通过列表索引,我们可以取出列表的元素。

【语法】

  1. 列表名或者列表本身。
  2. 英文中括号。
  3. 索引。

3. 列表的正索引取值

# 新建一个str列表
str_list = ["当归", "人参",  "黄芪"]print(str_list[0])
print(str_list[1])
print(str_list[2])

【终端输出】

当归
人参
黄芪

⚠️正索引从左往右开始编号,编号从0开始!

str_list[0]取到列表的第1元素当归
str_list[1]取到列表的第2元素人参
str_list[2]取到列表的第3元素黄芪

4. 列表的负索引取值

# 新建一个str列表
str_list = ["当归", "人参",  "黄芪"]print(str_list[-1])
print(str_list[-2])
print(str_list[-3])

【终端输出】

黄芪
人参
当归

⚠️负索引从右往左开始编号,编号从-1开始!

str_list[-1]取到列表的倒数第1元素黄芪
str_list[-2]取到列表的倒数第2元素人参
str_list[-3]取到列表的倒数第3元素当归

负索引取值通常使用在不知道列表有几个元素,或列表元素太多,你需要取倒数第n个元素的情况。

【温馨提示】

重点注意区分正索引从0开始编号,而负索引从-1开始编号。

5. 用列表本身取值

print(["当归", "人参",  "黄芪"][2])

【终端输出】

黄芪

上述代码是直接从一个列表中取出列表的第3个元素。

这样的方法很少用,了解即可。

6. 从嵌套列表中取值

【语法】

列表[索引][索引]

当需要从列表中的列表取值,即需要2次索引取值的时候,语法为列表[索引][索引]

嵌套列表就是指列表中还有列表,即列表的某个元素或某几个元素的数据类型为列表。

  1. 列表[索引]从列表中取出含有身份证号码的元素:
# 新建一个stu列表
stu_list = ["白敬亭",   ["联系方式", 19987658765] , ["身份证号",  533001199101023456]]# 用正索引取出列表的第3个元素
print(stu_list[2])# 用负索引取出列表的倒数第1个元素
print(stu_list[-1])# 查看取到的元素的数据类型
print("取到的元素数据类型为",type(stu_list[2]))
print("取到的元素数据类型为",type(stu_list[-1]))

【终端输出】

['身份证号', 533001199101023456]
['身份证号', 533001199101023456]
取到的元素数据类型为 <class 'list'>
取到的元素数据类型为 <class 'list'>

观察上述结果,取到的元素的数据类型为列表list

但这不是我想要的最终结果,我还想继续取出他的身份证号码,该如何操作呢?

  1. 列表[索引][索引]取出列表中的列表元素:
# 新建一个stu列表
stu_list = ["白敬亭",   ["联系方式", 19987658765] , ["身份证号",  533001199101023456]]# 用正索引取出列表的第3个元素,然后取出第3个元素中的第2个元素
print(stu_list[2][1])# 用负索引取出列表的倒数第1个元素,然后取出倒数第1个元素中的倒数第1个元素
print(stu_list[-1][-1])# 查看取到的元素的数据类型
print("取到的元素数据类型为",type(stu_list[2][1]))
print("取到的元素数据类型为",type(stu_list[-1][-1]))

【终端输出】

533001199101023456
533001199101023456
取到的元素数据类型为 <class 'int'>
取到的元素数据类型为 <class 'int'>

stu_list[2]取到了列表stu_list中的第3个元素,即['身份证号', 533001199101023456]

stu_list[2][1]中的[2]先取到['身份证号', 533001199101023456]

后面的[1]取到了['身份证号', 533001199101023456]中的第2个元素,即533001199101023456

取到的数据类型为整数。

7. 课后练习

  1. 我的书包中有雨伞、手机、钱包;钱包中有银行卡、公交卡、饭卡。

【题目要求】

  1. 用一个列表存储书包中的物品。
  2. 用一个列表存储钱包中的物品。
  3. 编写代码从书包列表中取出公交卡。

【参考答案】

# 新建一个钱包列表
qianbao = ["银行卡", "公交卡", "饭卡"]# 新建一个书包列表
shubao = ["雨伞", "手机", qianbao]# 从书包中取出第3个元素qianbao,然后取出qianbao中的第2个元素公交卡
print(shubao[2][1])

【终端输出】

公交卡

为了方便大家理解,上述列表名和列表中的元素我都用了中文。

  1. 取出下面列表中联系方式中的19987658765
# 新建一个stu列表
stu_list = ["白敬亭",   ["联系方式", [19987658765, 'xyz77520520']] , ["身份证号",  533001199101023456]]

【参考答案】

# 新建一个stu列表
stu_list = ["白敬亭",   ["联系方式", [19987658765, 'xyz77520520']] , ["身份证号",  533001199101023456]]# 正索引取值
print(stu_list[1][1][1])# 负索引取值
print(stu_list[-2][-1][-1])# 查看取到的元素的数据类型
print("取到的元素数据类型为",type(stu_list[1][1][1]))
print("取到的元素数据类型为",type(stu_list[-2][-1][-1]))

【终端输出】

xyz77520520
xyz77520520
取到的元素数据类型为 <class 'str'>
取到的元素数据类型为 <class 'str'>

上面是3层列表嵌套(我自己起的名字),大家可以多写几个更复杂更多层的列表嵌套取值程序,体验列表的多索引取值,有报错的可以截图或发源代码给我。

8. 总结

列表的索引取值和字符串取值语法一致,注意正索引编号从0开始即可。

本节重点掌握多次索引取值的语法:列表[索引][索引]

列表取值编程中经常用到,需要重点掌握。

27. Python 列表的索引取值相关推荐

  1. python列表嵌套字典取值_我的 python 学习历程-Day05 字典/字典的嵌套

    一.字典的初识 为什么要有字典 字典与列表同属容器型数据类型,同样可以存储大量的数据,但是,列表的数据关联性不强,并且查询速度比较慢,只能按照顺序存储. 什么是字典 先说一下什么叫可变与不可变的数据类 ...

  2. 28. Python 列表的切片取值

    28. 列表的切片取值 文章目录 28. 列表的切片取值 1. 列表的切片 2. 切片的语法 3. 切片取值示例 3.1 步长为1的切片取值 3.2 步长为3的切片取值 3.3 负索引取值 1. 列表 ...

  3. python列表嵌套字典取值_Python基础语法:你不得不知的几种变量类型

    (点击上方快速关注并设置为星标,一起学Python) 作者:kina_chen來源:简书 01. Python编码Python中默认的编码格式是 ASCII 格式,在没修改编码格式时无法正确打印汉字, ...

  4. python列表嵌套字典取值_Python零基础快速入门(五):列表和字典

    第5节课程大纲 一.数据类型:列表 1.什么是列表 2.从列表提取单个元素:偏移量 3.从列表提取多个元素:冒号切片 4.给列表增加/删除元素:append()函数 二.数据类型:字典 1.什么是字典 ...

  5. python 根据索引取值_Python基础知识2

    运行Python程序的两种方式 运行Python程序的三步骤(与文本编辑器对比) IDE工具----pycharm 注释 变量 基本数据类型及其内置方法 垃圾回收(GC)机制 基本运算符 流程控制(i ...

  6. python权重是什么意思_在python带权重的列表中随机取值的方法

    1 random.choice python random模块的choice方法随机选择某个元素 foo = ['a', 'b', 'c', 'd', 'e'] from random import ...

  7. python列表(list)+索引切片+修改+插入+删除+range函数生成整数列表对象

    python列表(list)+索引切片+修改+插入+删除+range函数生成整数列表对象 列表(list)是什么? 列表是Python中内置有序.可变序列,列表的所有元素放在一对中括号"[] ...

  8. python 获取唯一值_从Python列表中获取唯一值

    python 获取唯一值 In this article, we will be understanding 3 ways to get unique values from a Python lis ...

  9. python学习-数据类型(列表→创建、取值、大小、长度)

    数据类型 列表(list) 列表的创建 列表的取值(划重点) 列表的大小和长度 列表(list) 列表的创建 列表的创建很简单,使用中括号.理论上中括号里面的值是任意类型,上代码: lst1 = [1 ...

最新文章

  1. 十、关于MySQL 标识列,你该了解这些!
  2. [我的成长:8期]一晃又半年了
  3. jQuery Mobile事件,开发全解+完美注释
  4. Syntaxhighligher 使用中的一些问题
  5. 【OSS 最佳实践】JS SDK使用STS方式实现断点续传
  6. PHP经常用到的方法,[PHP]经常用到的实用函数集合第1/2页
  7. matlab中 dataset用法,dataset中shuffle()、repeat()、batch()用法
  8. 小程序分享功能实现php,微信小程序转发好友的功能
  9. Java程序线上运行CPU占用100%的处理方法
  10. 线性方程组解的几何意义
  11. pathinfo 伪静态 详细解析PATH_INFO 和 ORIG_PATH_INFO技术分享
  12. 三.Java基本语法
  13. 计算机控制键有哪些,常用的电脑快捷键大全有哪些
  14. 最强代码阅读器sourceInsight工具
  15. C语言-出生日期输入输出
  16. Jmeter 中断言操作
  17. InstructGPT高效实践——【DeepSpeed-Chat】源码详解(2/3):Supervised Finetuning、Reward Model Finetuning
  18. ACCESS数据库防下载技术
  19. 深入浅出聊Unity3D项目优化:从Draw Calls到GC (难度2 推荐5)
  20. Adaboost 算法的原理与推导(JUly)

热门文章

  1. 小白上手 为Kindle添加图书的五种方法
  2. C++知识点(2022.11.26~2023.1.31已完结)
  3. java中八进制常量是什么意思_Java 负的十六进制与八进制字面常量
  4. 镜头畸变矫正、鱼眼镜头(算法)
  5. 为什么我还在用Windows?
  6. 准的吓人的“寿命计算器”来了,用五分钟算算自己还能活多久
  7. 【uboot】uboot环境下usb命令
  8. 个人草根站长如何靠广告联盟赚钱
  9. 使用Bmob遇到的坑与解决办法
  10. 监控系统zabbix