Python中列表(List)的操作用法

2025-05-07 20 0

1. 列表基础

  • 定义列表:用方括号 [] 或 list() 创建。

  • my_list = [1, 2, 3]
    empty_list = list()

2. 增加元素

方法/操作 语法 示例 结果
追加元素 list.append(element) my_list.append(4) [1, 2, 3, 4]
合并列表 list.extend(iterable) my_list.extend([5, 6]) [1, 2, 3, 4, 5, 6]
插入元素 list.insert(index, element) my_list.insert(1, 99) [1, 99, 2, 3]
列表拼接 + 操作符 new_list = my_list + [7, 8] [1, 2, 3, 7, 8]
重复元素 * 操作符 my_list * 2 [1, 2, 3, 1, 2, 3]

3. 删除元素

方法/操作 语法 示例 结果
按值删除 list.remove(value) my_list.remove(2) [1, 3](删除第一个匹配值)
按索引删除 list.pop([index]) my_list.pop(1) 删除索引1的元素并返回它
清空列表 list.clear() my_list.clear() []
删除语句 del list[index] del my_list[0] 删除索引0的元素
删除切片 del list[start:end] del my_list[1:3] 删除索引1到2的元素

4. 修改元素

操作 语法 示例 结果
直接赋值 list[index] = value my_list[1] = 99 [1, 99, 3]
批量修改切片 list[start:end] = iterable my_list[1:3] = [10, 20] [1, 10, 20]

5. 查询元素

方法/操作 语法 示例 结果
按索引访问 list[index] my_list[1] 返回索引1的元素
切片访问 list[start:end:step] my_list[1:3] 返回子列表 [2, 3]
查找索引 list.index(value) my_list.index(3) 返回第一个3的索引(若不存在报错)
统计次数 list.count(value) [1, 2, 2, 3].count(2) 返回2(出现次数)
存在性检查 value in list 3 in my_list 返回TrueFalse

6. 其他常用操作

方法/操作 语法 示例 说明
排序 list.sort(reverse=False) my_list.sort() 原地升序排序
反转列表 list.reverse() my_list.reverse() 原地反转列表顺序
浅拷贝列表 list.copy() new_list = my_list.copy() 复制列表
获取长度 len(list) len(my_list) 返回元素数量
列表生成式 [exp for x in iterable] [x*2 for x in my_list] 生成新列表

7. 示例代码汇总

# 初始化列表
nums = [1, 2, 3]

# 增加元素
nums.append(4)          # [1, 2, 3, 4]
nums.extend([5, 6])     # [1, 2, 3, 4, 5, 6]
nums.insert(1, 99)      # [1, 99, 2, 3, 4, 5, 6]

# 删除元素
nums.remove(99)         # [1, 2, 3, 4, 5, 6]
popped = nums.pop(2)    # popped=3 → 列表变为 [1, 2, 4, 5, 6]
del nums[0]             # [2, 4, 5, 6]

# 修改元素
nums[1] = 100           # [2, 100, 5, 6]

# 查询元素
print(nums[1])          # 输出 100
print(5 in nums)        # 输出 True
print(nums.index(5))    # 输出 2

# 排序与反转
nums.sort()             # [2, 5, 6, 100]
nums.reverse()          # [100, 6, 5, 2]

# 列表生成式
squares = [x**2 for x in nums]  # [10000, 36, 25, 4]

注意事项

  1. 索引越界:访问不存在的索引会触发 IndexError

  2. 深浅拷贝copy() 是浅拷贝,嵌套列表需用 copy.deepcopy()

  3. 性能append() 和 pop() 的时间复杂度为 O(1),而 insert(0, x) 和 pop(0) 为 O(n)。


免责声明
本站https://ygz.ink文章https://ygz.ink/archives/1937.html中提供的一切软件、教程和内容信息仅限用于学习和研究目的;不得将上述内容用于商业或者非法用途,否则一切后果请用户自负。本站部分信息来自博主网络收集整理,版权争议与本站无关。您必须在下载后的24个小时之内,从您的电脑或手机中彻底删除上述内容。如果您喜欢该程序和内容,请支持正版,购买注册,得到更好的正版服务。我们非常重视版权问题,如有侵权请邮件与我们联系处理。敬请谅解!
邮箱:gouweicaosheji@163.com

相关文章

Python 集合(Set)用法,涵盖基本操作、集合运算、常用方法及特性
Python 元组(Tuple)用法的总结,涵盖基本操作、特性及常见应用场景
Python中print和input用法总结
大道至简
如何在WordPress网站文章中不用插件直接引用插入哔哩哔哩bilibili视频
记录下孩子的荣誉

发布评论