关键词

Python修改 list列表元素

Python 有两种修改列表元素的方法:

  1. 修改单个元素
  2. 同时修改多个元素

修改单个元素

修改列表单个元素很简单,直接给对应索引位置的元素赋值即可。语法为:列表变量名[索引值]=值

实例如下:

tech = ['Python','Web','Spider']

tech[1] = 'Big Data'
print(tech)

输出结果为:

['Python', 'Big Data', 'Spider']

同时修改多个元素

Python支持使用切片语法同时修改多个列表元素,严格来讲,它所做的应该是替换。

它的语法格式为:

列表变量名[起始索引值:结束索引值]=[元素A,元素B...]

下面简单的示例演示了如何修改多个元素的值:

items = [1,3,5,7,9,11,13]
items[2:5]=[2,4,6]
print(items)

输出的结果为:

可以看到,它将索引值从2到4的元素,依次进行了替换。并且根据切片的特性,它修改的是索引2、3、4共3个元素,不会将索引值为5的元素修改掉。想了解更多切片的内容,可点击《Python 序列详解(含索引、切片) —Python技术站》文章查看。

正如上文所讲,此方式其实是对多个元素进行替换,也就是说,你想要替换的元素既可以多也可以少,也就是既可以新增,也可以删除。

实例如下:

items = [1,2,3,4,5,6,7,8,9,10]
#替换为更多个元素
items[2:5]=[8,8,8,8,8,8,8,8,8,8,8,8]
print(items)

items2 = [1,2,3,4,5,6,7,8,9]

#替换为更少个元素
items2[2:6]=[0,0]
print(items2)

输出结果为:

另外值得一提的是,如果切片指定了步长,那么你要替换的元素必须与原来的元素数量一致,否则会报ValueError的异常。

items = [1,2,3,4,5,6,7,8,9,10]
#步长为2,为第2、4、6个元素赋值
items[2:8:2]=[0,0,0]
print(items)

items2 = [1,2,3,4,5,6,7,8,9,10]
#赋值时数量多一位
items2[2:8:2]=[0,0,0,0]
print(items2)

输出结果为:

本文链接:http://task.lmcjl.com/news/3718.html

展开阅读全文