python替换元素
⑴ python 中交换两个列表元素的位置为什么用numbers[i],numbers[i+1] = numbers[i+1],numbers[i]
numbers[i], numbers[i+1] = numbers[i+1], numbers[i]
这是一个赋值语句,相当于:
t = (numbers[i+1], numbers[i]) # t是一个tuple元组
numbers[i] = t[0]
numbers[i+1] = t[1]
例如:numbers = [5, 6, 7]
i = 0 时
赋值时就是把numbers[i], numbers[i+1] = numbers[i+1], numbers[i] 这个语句中
等号右边的numbers[i+1], numbers[i] 先求值,得
numbers[1] == 6
numbers[0] == 5
再把 6, 5 赋值给等号左边(因为list列表是可变的数据类型,它的值可以添加,删除或改变),即:
numbers[i], numbers[i+1] = 6, 5
也就是:
numbers[0], numbers[1] = 6, 5
相当于:
numbers[0] = 6
numbers[1] = 5
此时,列表numbers 的值就被改变了(两个元素交换了位置)。
在IDLE 中验证如下:
>>> numbers = [5, 6, 7]
>>> i = 0
>>> numbers[i], numbers[i+1] = numbers[i+1], numbers[i]
>>> numbers
[6, 5, 7]
最后你的问题表述【交换两个列表元素的位置】改成【交换列表中两个元素的位置】是不是更没有歧义?
⑵ python如何批量修改列表元素
list = ['一班张三', '二班李明', '二班张丽丽', '四班王强', '一班张志华']
list = ['树人小学' + re.sub('^\w\w', '', x) for x in list]
print(list)
⑶ python中List添加、删除元素的几种方法
add element:
alist=[1,2,3]
alist.append(4)
print(alist)#[1,2,3,4]
delete element:
alist.remove(2)
print(alist)#[1,3,4]
alist.pop(2)
print(alist)#[1,3]
⑷ python替换list元素,列表alist中有很多0数字,要替换成1
alist=[1,3,5,2,0,3,7,0,0,3,7]
foriinrange(len(alist)):
ifalist[i]==0:
alist[i]=1
printalist