for循环可以遍历列表字典,但是想要用for循环在遍历的时候对其进行修改就很困难了,这个时候可以用while循环。
exams = ["chinese","math","python"]
doneexams = []
创建两个列表,一个是我们需要考的科目exams,另外一个是已经考完的科目的列表。我们要一个个的把exams的元素移动到doneexams中,应该怎么办呢?
exams = ["chinese","math","python"]
doneexams = []
while exams:
doneexam = exams.pop()
doneexams.append(doneexam)
print(exams)
print(doneexams)
前边我们说过,pop()这个函数就是删除列表最后一个元素但是依旧在函数中保存这个元素。append()这个函数是在列表末尾加一个元素。
我们的while函数运行到pop这个函数不能再运行,也就是运行到exams这个列表被全部删除。
以前我们说过,remove这个函数可以移除列表中指定元素,可是有的时候给定我们的列表可能差强人意,如有重复元素:
删除没有重复的元素完全没有问题,可是如果删除有重复的元素:
只会删除第一个。
想要删除全部的math可以用while循环:
exams = ["chinese","math","python","math"]
while "math" in exams:
exams.remove("math")
print(exams)