乐趣区

关于python:python修改列表元素有什么方法

增删改查是解决数据最常见的办法,前两种说过了,这里就要说说 python 提供的两种批改列表元素的办法,一种是批改单个元素,还有一种的批改一组数据的办法。

一、批改单个元素

批改单个元素从原理上讲就是从新给指定地位的元素赋值。上面来看看代码演示。

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
name1[2] = 'python 自学网'
print(name1)
返回后果:['python', 'java', 'python 自学网', 'MySql', 'C++', 'C', 'php', 'C#']

二、批改一组元素

这里应用的就是切片这种手法来给 list 列表做整段元素批改的,在进行这种操作时,如果不指定步长(step 参数),Python 就不要求新赋值的元素个数与原来的元素个数雷同;这象征,该操作既能够为列表增加元素,也能够为列表删除元素。

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
name1[2:4] = ['python 自学网', 'www.wakey.com.cn']
print(name1)
返回后果:['python', 'java', 'python 自学网', 'www.wakey.com.cn', 'C++', 'C', 'php', 'C#']

这里要留神的是切片区间蕴含的元素个数和指定列表中元素的个数要雷同。
还有一种切片办法是指定步长切片,同样能够批改多个列表元素的值。看看上面的代码演示。

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
name1[1:5:2] = ['python 自学网', 'www.wakey.com.cn']
print(name1)
返回后果:['python', 'python 自学网', 'php', 'www.wakey.com.cn', 'C++', 'C', 'php', 'C#']

下面这段代码的意思是,从第二个元素到第六个元素,每隔 2 个批改成指定的列表中元素。从第二个到第六个蕴含 4 个元素,每隔 2 个批改一下正好能批改两个,如果蕴含 6 个元素,这是新的列表中元素不够就会报错。看看上面的演示;

name1 = ['python', 'java', 'php', 'MySql', 'C++', 'C', 'php', 'C#']
name1[1:7:2] = ['python 自学网', 'www.wakey.com.cn']
print(name1)

返回后果:

Traceback (most recent call last):
  File "C:/Users/Administrator/Desktop/python 常识总结 /python 根底 /9-4. 批改列表元素.py", line 12, in <module>
    name1[1:7:2] = ['python 自学网', 'www.wakey.com.cn']
ValueError: attempt to assign sequence of size 2 to extended slice of size 3
退出移动版