本文摘自php中文网,作者爱喝马黛茶的安东尼,侵删。
列表的元素相当于变量,因此程序可以对列表的元素赋值,这样即可修改列表的元素。例如如下代码:
1 2 3 4 5 | a_list = [2, 4, -3.4, 'crazyit' , 23]# 对第3个元素赋值
a_list[2] = 'fkit' print (a_list) # [2, 4, 'fkit' , 'crazyit' , 23]
# 对倒数第2个元素赋值
a_list[-2] = 9527
print (a_list) # [2, 4, 'fkit' , 9527, 23]
|
上面代码通过索引到列表元素赋值,程序既可使用正数索引,也可使用负数索引,这都没有问题。
相关推荐:《Python视频教程》
此外,程序也可通过 slice 语法对列表其中一部分赋值,在执行这个操作时并不要求新赋值的元素个数与原来的元素个数相等。
这意味着通过这种方式既可为列表增加元素,也可为列表删除元素。例如,如下代码示范了对列表中间一段赋值:
1 2 3 4 | b_list = list(range(1, 5))
print (b_list)# 将第2个到第4个(不包含)元素赋值为新列表的元素
b_list[1: 3] = [ 'a' , 'b' ]
print (b_list) # [1, 'a' , 'b' , 4]
|
如果对列表中空的 slice 赋值,就变成了为列表插入元素。例如如下代码:
1 2 3 | # 将第3个到第3个(不包含)元素赋值为新列表的元素,就是插入
b_list[2: 2] = [ 'x' , 'y' ]
print (b_list) # [1, 'a' , 'x' , 'y' , 'b' , 4]
|
如果将列表其中一段赋值为空列表,就变成了从列表中删除元素。例如如下代码:
1 2 3 | # 将第3个到第6个(不包含)元素赋值为空列表,就是删除
b_list[2: 5] = []
print (b_list) # [1, 'a' , 4]
|
对列表使用 slice 语法赋值时,不能使用单个值;如果使用字符串赋值,Python 会自动把字符串当成序列处理,其中每个字符都是一个元素。例如如下代码:
1 2 3 | # Python会自动将str分解成序列
b_list[1: 3] = 'Charlie'
print (b_list) # [1, 'C' , 'h' , 'a' , 'r' , 'l' , 'i' , 'e' ]
|
在使用 slice 语法赋值时,也可指定 step 参数。但如果指定了 step 参数,则要求所赋值的列表元素个数与所替换的列表元素个数相等。例如如下代码:
1 2 3 4 | c_list = list(range(1, 10))
# 指定step为2,被赋值的元素有4个,因此用于赋值的列表也必须有4个元素
c_list[2: 9: 2] = [ 'a' , 'b' , 'c' , 'd' ]
print (c_list) # [1, 2, 'a' , 4, 'b' , 6, 'c' , 8, 'd' ]
|
以上就是python中list可以修改吗的详细内容,更多文章请关注木庄网络博客!!
相关阅读 >>
如何列出一个目录的所有文件
Python shell是什么
Python中encoding是什么意思
手把手教你在Python中如何使用while true语句
Python global用法
Python中dict是什么意思
Python中del函数的用法
Python3中nonlocal和global的用法及区别介绍(附示例)
Python开发的gui漂亮吗
Python函数之compile()函数
更多相关阅读请进入《Python》频道 >>
人民邮电出版社
python入门书籍,非常畅销,超高好评,python官方公认好书。
转载请注明出处:木庄网络博客 » python中list可以修改吗