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

Python列表:从入门到灵活运用的全攻略

一、列表基础特性
可变序列‌:支持动态增删改元素
异构存储‌:可混合存储不同类型数据
有序集合‌:元素保持插入顺序
索引访问‌:支持正向(0开始)和反向(-1开始)索引
二、核心操作大全
创建与初始化
python
empty_list = []  # 空列表
numbers = [1, 2, 3, 4, 5]  # 数字列表
mixed = [1, 'text', 3.14, True]  # 混合类型
nested = [[1,2], [3,4]]  # 嵌套列表
增删改查操作
python
# 增加元素
lst.append(x)  # 末尾添加
lst.insert(i, x)  # 指定位置插入
lst.extend(iterable)  # 合并可迭代对象

# 删除元素
lst.remove(x)  # 删除首个匹配值
lst.pop([i])  # 删除并返回指定位置元素
del lst[i:j]  # 删除切片

# 修改元素
lst[i] = new_value  # 直接赋值
lst[i:j] = [x,y,z]  # 切片赋值

# 查询元素
x in lst  # 成员检测
lst.index(x)  # 查找索引
lst.count(x)  # 计数出现次数
三、高级应用技巧
1. 列表推导式
python
squares = [x**2 for x in range(10)]
even_squares = [x**2 for x in range(10) if x % 2 == 0]
2. 排序与自定义排序
python
lst.sort()  # 原地排序
sorted_lst = sorted(lst)  # 返回新列表

# 自定义排序
users.sort(key=lambda x: x['age'])  # 按年龄排序
3. 切片技巧
python
lst[::-1]  # 列表反转
lst[::2]  # 隔一个取一个
lst[:5]  # 前5个元素
4. 内存优化
python
# 使用生成器表达式处理大数据
sum(x*x for x in range(1000000))  # 不创建临时列表
四、性能优化指南
预分配空间‌:已知大小时使用lst = [None]*n预分配
避免频繁拼接‌:使用extend()替代+操作
选择合适数据结构‌:
频繁插入/删除开头 → 考虑collections.deque
元素唯一性检查 → 考虑set
利用内置函数‌:map(), filter()等函数式操作。

http://www.xdnf.cn/news/1480357.html

相关文章:

  • [光学原理与应用-425]:非线性光学 - 非线性光学研究的内容:非线性晶体、光波频率的变化
  • Python中list()使用详解及注意事项
  • 微服务的编程测评系统21-项目部署-mysql-nacos
  • Java线程通信
  • ChatGPT下的相关聊天提示词
  • 深度学习:残差网络ResNet与迁移学习
  • 【LeetCode热题100道笔记】二叉树的直径
  • 【杂类】Spring 自动装配原理
  • 基于多级特征编码器用于声学信号故障检测模型
  • 嵌入式学习日记
  • Linux系统编程—进程控制
  • 产品更新与路线图平台ShipShipShip
  • Java中的字符串
  • 提示词工程(Prompt Engineering)的崛起——为什么“会写Prompt”成了新技能?
  • Wisdom SSH 是一款创新性工具,通过集成 AI 助手,为服务器性能优化带来极大便利。
  • 【FastDDS】Layer Transport ( 04-TCP Transport )
  • 数据库中间件ShardingSphere v5.2.1
  • (算法 哈希表)【LeetCode 242】有效的字母异位词
  • 关于 React 19 的四种组件通信方法
  • 十三、计算机领域英语
  • TDengine 时间函数 WEEKOFYEAR() 用户手册
  • 【C++框架#3】Etcd 安装使用
  • Blender 3D建模工具学习笔记
  • LeetCode15:三数之和
  • 《MATLAB 批量把振动 CSV(含中文“序号/采样频率”)稳健转成 .mat:自动解析+统一换算+按 H/I/O/F-rpm-fs-load 命名》
  • WIN10+ubuntu22.04.05双系统装机教程
  • 基于STM32F103C8T6的心率与体温监测及报警显示系统设计
  • 如何在 FastAPI 中巧妙覆盖依赖注入并拦截第三方服务调用?
  • vue + ant-design-vue + vuedraggable 实现可视化表单设计器
  • 用 PHP 玩向量数据库:一个从小说网站开始的小尝试