当前位置: 首页 > news >正文

20天零基础自学Python | Day9 List列表用法大全

大家好,我是宁一。

今天我们来讲讲Python列表。

列表就是用来保存一组数据的,使用中括号[ ]将数据包起来,数据之间用英文逗号,隔开。比如:[1,2,3,4,5]

1、列表特点

前面课程给大家举过一个例子。

如果列表是一个小姐姐,列表中的数据是一个个娃娃,那可以这样来描述:

2、创建列表

列表中的数据项,可以是不同的数据类型。

比如我们创建一个名为ningyi的列表,可以将字符串、整数等信息放在一个列表中。

ningyi =  ["女",26,"1995-07-12"]

3、查找列表元素

列表中的每一个元素都分配了一个数字,这个数字我们通常叫它“索引”。列表的索引是从0开始的,第一个索引是0,第二个索引是1,依此类推…

获取方式其实跟我们上节课讲的字符串是一样的。

# 获取第1个元素
ningyi[0]     # 输出 '女'


# 获取第2个元素
ningyi[1]     # 输出 26

还可以使用索引来获取一定范围的元素,要注意不包括最后一个字符。

# 获取前面两个元素
ningyi[0:2]    # 输出 ['女', 26]
ningyi[:2]    # 这样写也可以,将0省略


# 获取后面两个元素
ningyi[1:3]   # 输出  [26, '1995-07-12']
ningyi[-2:] # 这样写也可以,用负数索引

4、更新列表元素

(1)append() 在列表末尾添加新元素

ningyi.append(55)
# 输出   ['女', 26, '1995-07-12', 55]

(2)insert() 在特定索引位置添加新元素

# 在索引为3的位置,添加44这个元素
ningyi.insert(3,44)
# 输出   ['女', 26, '1995-07-12', 44, 55]

(3)extend() 合并两个列表

list1 = [1,2,3]
list2 = [4,5,6]


list1.extend(list2) 
# 输出   [1, 2, 3, 4, 5, 6]


#可以直接用+号合并
list1+list2

5、删除列表元素

(1)del 删除特定索引的元素

删除我们上面在索引为3的位置,添加的元素44。

del ningyi[3]
# 输出   ['女', 26, '1995-07-12', 55]

(2)pop() 删除末尾元素

删除并返回末尾的元素。

ningyi.pop()
# 输出   55

(3)remove() 根据值删除元素

ningyi.remove("女")
# 输出   [26, '1995-07-12']

注意:remove() 函数只会删除列表中的第一个匹配项。如果想要删除所有匹配的元素。可以用while循环来操作,后面课程我们会学习。

(4)clear() 清除列表

# 清空ningyi列表
ningyi.clear()

6、其他常用操作

我们重新定义一个名为list1的列表:

list1 = [3,4,5,1,2,3]

(1)len() 列表长度

len(list1)
# 输出   6

(2)in 列表判断

in用来判断某个值是否存在于列表中,返回True或者False。

7 in list1
# 输出 False
1 in list1
# 输出 True

也可以使用not in,输出结果刚好跟 in 相反。

1 in list1
# 输出 False

(3)count() 统计元素在列表中出现的次数

list1.count(4)
# 输出 1

(4)index() 获取某个元素的索引

list1.index(4)
# 输出 1

(5)列表元素最大值、最小值

注意列表中的元素只能是数字类型。

max(list1)
# 输出   5


min(list1)
# 输出   1

(6)sort() 排序

默认是从小到大排序。

list1.sort()
# 输出   [1, 2, 3, 3, 4, 5]

(7)reverse() 列表翻转

一般是跟sort() 排序函数一起使用,sort() 默认是从小到大排序,结合reverse()实现从大到小排序

list1.reverse()
# 输出 [5, 4, 3, 3, 2, 1]

点击关注,Python入门不迷路~

相关文章:

  • K8S的安装kubernetes-dashboard服务起来了,访问不到解决
  • TCP协议(全面总结)
  • 在Adult数据集上使用pandas进行独热编码,之后部署Logistic Regression模型
  • 沉睡者IT - 几种网赚项目引流的方法
  • Dubbo后台管理和监控中心部署
  • Java基于JSP+Servlet的校友论坛管理系统
  • 根据int颜色值获取带透明度的颜色
  • 金仓数据库KingbaseES客户端应用参考手册--17. vacuumdb
  • 【坑货IDEA】Spring项目运行中的问题
  • 金仓数据库KingbaseES客户端编程接口指南-ado.net(3. KingbaseES 驱动在 .NET 平台的配置)
  • tf.gather_nd
  • 软考高项——计算专题
  • 东芝发布智能栅极驱动光电耦合器,简化功率器件外围电路的设计
  • 如何通过供应链数字化业务协同,赋能化工企业降本增效
  • 第七章【ADFS集成Exchang实现OWA\ECP单点登录SSO】ADFS服务器对Exchange的配置***(本栏目重点)
  • [数据结构]链表的实现在PHP中
  • canvas 高仿 Apple Watch 表盘
  • CSS 提示工具(Tooltip)
  • Docker入门(二) - Dockerfile
  • ES6之路之模块详解
  • Javascript基础之Array数组API
  • Linux各目录及每个目录的详细介绍
  • MobX
  • nfs客户端进程变D,延伸linux的lock
  • sublime配置文件
  • 安装python包到指定虚拟环境
  • 基于web的全景—— Pannellum小试
  • 开年巨制!千人千面回放技术让你“看到”Flutter用户侧问题
  • 快速体验 Sentinel 集群限流功能,只需简单几步
  • 聊聊redis的数据结构的应用
  • 微信小程序填坑清单
  • 看到一个关于网页设计的文章分享过来!大家看看!
  • zabbix3.2监控linux磁盘IO
  • 从如何停掉 Promise 链说起
  • #控制台大学课堂点名问题_课堂随机点名
  • #我与Java虚拟机的故事#连载15:完整阅读的第一本技术书籍
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (42)STM32——LCD显示屏实验笔记
  • (c语言)strcpy函数用法
  • (附程序)AD采集中的10种经典软件滤波程序优缺点分析
  • (蓝桥杯每日一题)平方末尾及补充(常用的字符串函数功能)
  • (学习日记)2024.04.10:UCOSIII第三十八节:事件实验
  • (终章)[图像识别]13.OpenCV案例 自定义训练集分类器物体检测
  • (转)linux下的时间函数使用
  • **PyTorch月学习计划 - 第一周;第6-7天: 自动梯度(Autograd)**
  • .bat批处理(六):替换字符串中匹配的子串
  • .equals()到底是什么意思?
  • .NET Conf 2023 回顾 – 庆祝社区、创新和 .NET 8 的发布
  • .NET Micro Framework初体验
  • .net 程序发生了一个不可捕获的异常
  • .NET 的程序集加载上下文
  • .NET 中选择合适的文件打开模式(CreateNew, Create, Open, OpenOrCreate, Truncate, Append)
  • .NET处理HTTP请求
  • .NET中两种OCR方式对比
  • @Autowired注解的实现原理