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

【5.2 python中的列表】

python中的列表


Python中的列表(List)是一种非常灵活且强大的数据结构,用于存储一系列的元素。列表是可变的,意味着你可以添加、删除或修改列表中的元素。列表中的元素可以是不同类型的数据,包括整数、浮点数、字符串、甚至是另一个列表(即列表的嵌套)。

列表的创建

列表用方括号[]表示,元素之间用逗号,分隔。

# 创建一个包含不同类型元素的列表
my_list = [1, 2.5, "Hello", [10, 20]]
print(my_list)
# 输出: [1, 2.5, 'Hello', [10, 20]]# 创建一个空列表
empty_list = []
print(empty_list)
# 输出: []

列表的索引

列表中的元素可以通过索引来访问,索引从0开始。

my_list = [10, 20, 30, 40, 50]
print(my_list[0])  # 输出: 10
print(my_list[4])  # 输出: 50

列表的切片

切片操作允许你获取列表的一个子集。

my_list = [10, 20, 30, 40, 50]
print(my_list[1:3])  # 输出: [20, 30]
print(my_list[::2])  # 输出: [10, 30, 50]  # 使用步长2

列表的修改

由于列表是可变的,因此你可以修改列表中的元素。

my_list = [10, 20, 30, 40, 50]
my_list[1] = 25  # 修改第二个元素
print(my_list)  # 输出: [10, 25, 30, 40, 50]

列表的添加和删除

你可以使用append()方法在列表末尾添加一个新元素,使用remove()方法删除列表中的某个元素(如果元素存在的话),或使用del语句删除列表中的元素(通过索引)。

my_list = [10, 20, 30]
my_list.append(40)  # 在末尾添加元素
print(my_list)  # 输出: [10, 20, 30, 40]my_list.remove(20)  # 删除元素20
print(my_list)  # 输出: [10, 30, 40]del my_list[1]  # 通过索引删除元素
print(my_list)  # 输出: [10, 40]

列表的排序

列表有一个sort()方法,可以对列表中的元素进行就地排序(即修改原列表),还有一个sorted()函数,它可以对任何可迭代对象进行排序,并返回一个新的列表。

my_list = [3, 1, 4, 1, 5, 9]
my_list.sort()  # 就地排序
print(my_list)  # 输出: [1, 1, 3, 4, 5, 9]another_list = sorted(my_list)  # 返回新列表,原列表不变
print(another_list)  # 输出: [1, 1, 3, 4, 5, 9]
print(my_list)  # 输出: [1, 1, 3, 4, 5, 9]  # 注意原列表已被排序

列表的嵌套

列表可以包含另一个列表,这种结构称为列表的嵌套。

matrix = [[1, 2, 3],[4, 5, 6],[7, 8, 9]
]
print(matrix)
# 输出:
# [
#   [1, 2, 3],
#   [4, 5, 6],
#   [7, 8, 9]
# ]# 访问嵌套列表的元素
print(matrix[1][1])  # 输出: 5

列表是Python中非常强大的数据结构,它们支持多种操作,使得处理数据集合变得简单而高效。

http://www.lryc.cn/news/421822.html

相关文章:

  • opencv-特征检测
  • 单片机在线升级架构(bootloader+app)
  • leetcode169. 多数元素,摩尔投票法附证明
  • Pixel Adventure Unity2D开发完整指南
  • signed main()与int main()的区别
  • 【面试宝典】Java基础 这个面试题整理的不全 后期会进行补充
  • 获取语音文件时长
  • 应急响应计划:网络安全事件后的快速恢复策略
  • 【网络】IP和MAC地址的映射——ARP协议和ARP欺骗概述
  • 鸿蒙(API 12 Beta3版)【音视频解封装】 文件解析封装
  • 智能马桶盖和普通马桶盖有什么不同?
  • C# OnnxRuntime部署LivePortrait实现快速、高质量的人像驱动视频生成
  • Spring boot框架指南
  • 数据结构--树与二叉树
  • C#项目实战经验——计时方法总结
  • 电子盖章软件哪个好|盖章软件
  • ThreejsWebGPU运动残影demo
  • HttpSession常用方法
  • 【JavaEE初阶】文件操作和IO
  • 存储器芯片的基本原理
  • 前端实习手记(7):立秋快乐
  • 感恩放下,笑对人生,在人生的长河中,每一天都是独特的篇章,或顺心如意,或充满挑战
  • URLSession之初窥门径
  • ios创建控制器的3种方法实现页面跳转
  • Android逆向题解-boomshakalaka-3-难度5
  • Linux(Ubuntu 22.04)系统中固定串口
  • LeetCode - 209 - 长度最小的子数组
  • 探索空间计算与VR中的手势跟踪新纪元:XHand框架详解
  • leetcode + 项目复习
  • 树莓派4/5:设置apt、pip、conda首选清华镜像源