這或許是對小白最友好的python入門了吧——18,用while循環處理列表
for循環可以遍歷列表字典,但是想要用for循環在遍歷的時候對其進行修改就很困難了,這個時候可以用while循環。
exams = ["chinese","math","python"]ndoneexams = []n
創建兩個列表,一個是我們需要考的科目exams,另外一個是已經考完的科目的列表。我們要一個個的把exams的元素移動到doneexams中,應該怎麼辦呢?
exams = ["chinese","math","python"]ndoneexams = []nwhile exams:ntdoneexam = exams.pop()ntdoneexams.append(doneexam)nprint(exams)nprint(doneexams)n
前邊我們說過,pop()這個函數就是刪除列表最後一個元素但是依舊在函數中保存這個元素。append()這個函數是在列表末尾加一個元素。
我們的while函數運行到pop這個函數不能再運行,也就是運行到exams這個列表被全部刪除。
以前我們說過,remove這個函數可以移除列表中指定元素,可是有的時候給定我們的列表可能差強人意,如有重複元素:
刪除沒有重複的元素完全沒有問題,可是如果刪除有重複的元素:
只會刪除第一個。
想要刪除全部的math可以用while循環:
exams = ["chinese","math","python","math"]nwhile "math" in exams:ntexams.remove("math")nprint(exams)n
本文首發於公眾號TungHsu
推薦閱讀:
※剛安裝了pycharm, 寫了一句print "nice!" 都報錯是怎麼回事?
※Python爬蟲學習?
※Python的return如何理解?