Python list列表修改元素
Python 提供了两种修改列表(list)元素的方法,你可以每次修改单个元素,也可以每次修改一组元素(多个)。
运行结果:
下面的代码演示了如何修改一组元素的值:
运行结果:
[40, 45.25, -77, -52.5, 36, 100, 7]
如果对空切片(slice)赋值,就相当于插入一组新的元素:
运行结果:
[40, 36, 89, 2, -77, -52.5, 999, 36, 100, 7]
使用切片语法赋值时,Python 不支持单个值,例如下面的写法就是错误的:
['H', 'e', 'X', 'Y', 'Z', 'o']
使用切片语法时也可以指定步长(step 参数),但这个时候就要求所赋值的新元素的个数与原有元素的个数相同,例如:
运行结果:
[40, 0.025, 89, -99, 36, 20.5, 7]
修改单个元素
修改单个元素非常简单,直接对元素赋值即可。请看下面的例子:- nums = [40, 36, 89, 2, 36, 100, 7]
- nums[2] = -26 #使用正数索引
- nums[-3] = -66.2 #使用负数索引
- print(nums)
[40, 36, -26, 2, -66.2, 100, 7]
使用索引得到列表元素后,通过=
赋值就改变了元素的值。
修改一组元素
Python 支持通过切片语法给一组元素赋值。在进行这种操作时,如果不指定步长(step 参数),Python 就不要求新赋值的元素个数与原来的元素个数相同;这意味,该操作既可以为列表添加元素,也可以为列表删除元素。下面的代码演示了如何修改一组元素的值:
- nums = [40, 36, 89, 2, 36, 100, 7]
- #修改第 1~4 个元素的值(不包括第4个元素)
- nums[1: 4] = [45.25, -77, -52.5]
- print(nums)
[40, 45.25, -77, -52.5, 36, 100, 7]
如果对空切片(slice)赋值,就相当于插入一组新的元素:
- nums = [40, 36, 89, 2, 36, 100, 7]
- #在4个位置插入元素
- nums[4: 4] = [-77, -52.5, 999]
- print(nums)
[40, 36, 89, 2, -77, -52.5, 999, 36, 100, 7]
使用切片语法赋值时,Python 不支持单个值,例如下面的写法就是错误的:
nums[4: 4] = -77
但是如果使用字符串赋值,Python 会自动把字符串转换成序列,其中的每个字符都是一个元素,请看下面的代码:s = list("Hello") s[2:4] = "XYZ" print(s)运行结果:
['H', 'e', 'X', 'Y', 'Z', 'o']
使用切片语法时也可以指定步长(step 参数),但这个时候就要求所赋值的新元素的个数与原有元素的个数相同,例如:
- nums = [40, 36, 89, 2, 36, 100, 7]
- #步长为2,为第1、3、5个元素赋值
- nums[1: 6: 2] = [0.025, -99, 20.5]
- print(nums)
[40, 0.025, 89, -99, 36, 20.5, 7]
分类:
列表、元组、字典和集合
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· winform 绘制太阳,地球,月球 运作规律
· AI与.NET技术实操系列(五):向量存储与相似性搜索在 .NET 中的实现
· 超详细:普通电脑也行Windows部署deepseek R1训练数据并当服务器共享给他人
· 【硬核科普】Trae如何「偷看」你的代码?零基础破解AI编程运行原理
· 上周热点回顾(3.3-3.9)