python中list列表修改元素

python中提供了两种修改列表(list)元素的方法,你可以修改单个元素,也可以每次修改多个元素

修改单个元素

修改单个元素直接对元素赋值即可

示例:

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
list[0] = 1
print(list)

运行结果:

[‘python’, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]
[1, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]

使用索引得到列表元素后,通过 = 赋值就改变了元素的值

修改多个元素

python支持通过切边语法给一组元素赋值。在进行这种操作时,如果不指定步长(step参数),python就不要求新赋值的元素个数与原来的元素个数相同;这就意味着,该操作既可以为列表添加元素,也可以为列表删除元素

示例:

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
#修改第一个元素到第五个元素(不包含第五个元素)
list[0:4] = [1,2,3,4]
print(list)

运行结果:

[‘python’, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]
[1, 2, 3, 4, 78, 9, 80, 90, 2, 34, 2]

如果对空切片(slice)赋值,就相当于插入一组新的元素

示例:

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
#对空切片(slice)赋值,就相当于插入一组新的元素
list[4:4] = [1,2,3,4]
print(list)

运行结果:

[‘python’, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]
[‘python’, 1, 2, ‘java’, 1, 2, 3, 4, 78, 9, 80, 90, 2, 34, 2]

使用切片语法赋值时,python不支持单个值,比如:list[4:4] = 33这种写法是错误的

但是如果使用字符串赋值,python会自动把字符串转换成序列,其中每个字符都是一个元素

示例

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
list[2:4] = "xyz"
print(list)

运行结果:

[‘python’, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]
[‘python’, 1, ‘x’, ‘y’, ‘z’, 78, 9, 80, 90, 2, 34, 2]

使用切片语法时也可以指定步长(step参数),但这个必须要求所赋值的新元素的个数与原有元素的个数相同

示例:

list = ["python",1,2,"java",78,9,80,90,2,34,2]
print(list)
list[1:6:2] = [3,4,5]
print(list)

运行结果:

[‘python’, 1, 2, ‘java’, 78, 9, 80, 90, 2, 34, 2]
[‘python’, 3, 2, 4, 78, 5, 80, 90, 2, 34, 2]

 

 

    原文作者:魏大橙
    原文地址: https://blog.csdn.net/Thewei666/article/details/124505595
    本文转自网络文章,转载此文章仅为分享知识,如有侵权,请联系博主进行删除。
点赞