【編測編學】零基礎學python_09_列表(操作列表之遍歷列表)
遍歷整個列表
你經常需要遍歷列表的所有元素,對每個元素執行相同的操作。例如,在遊戲中,可能需要將每個介面元素平移相同的距離;對於包含數字的列表,可能需要對每個元素執行相同的統計運算;在網站中,可能需要顯示文章列表中的每個標題。需要對列表中的每個元素都執行相同的操作時,可使用Python中的for 迴圈。 假設我們有一個魔術師名單,需要將其中每個魔術師的名字都列印出來。為此,我們可以分別獲取名單中的每個名字,但這種做法會導致多個問題。例如,如果名單很長,將包含大量重複的程式碼。另外,每當名單的長度發生變化時,都必須修改程式碼。透過使用for 迴圈,可讓Python去處理這些問題。 下面使用for 迴圈來列印魔術師名單中的所有名字: 首先,我們像第3章那樣定義了一個列表,接下來我們定義了一個for 迴圈,這行程式碼讓Python從列表magicians 中取出一個名字,並將其儲存在變 量magician 中。最後,我們讓Python列印前面儲存到變數magician 中的名字。這樣,對於列表中的每個名字,Python都將重複執行2、3行的程式碼行。你可以這 樣解讀這些程式碼:對於列表magicians 中的每位魔術師,都將其名字列印出來。輸出很簡單,就是列表中所有的姓名: 1. 深 入地 研究 迴圈 迴圈這種概念很重要,因為它是讓計算機自動完成重複工作的常見方式之一。例如,在前面的magicians.py中使用的簡單迴圈中,Python將首先讀取其中的第一行程式碼: for magician in magicians: 這行程式碼讓Python獲取列表magicians 中的第一個值('alice' ),並將其儲存到變數magician 中。接下來,Python讀取下一行程式碼: print(magician) 它讓Python列印magician 的值——依然是'alice' 。鑑於該列表還包含其他值,Python返回到迴圈的第一行: for magician in magicians: Python獲取列表中的下一個名字——'david' ,並將其儲存到變數magician 中,再執行下面這行程式碼: print(magician) Python再次列印變數magician 的值——當前為'david' 。接下來,Python再次執行整個迴圈,對列表中的最後一個值——'carolina' 進行處理。至此,列表中沒有其他的值 了,因此Python接著執行程式的下一行程式碼。在這個示例中,for 迴圈後面沒有其他的程式碼,因此程式就此結束。 剛開始使用迴圈時請牢記,對列表中的每個元素,都將執行迴圈指定的步驟,而不管列表包含多少個元素。如果列表包含一百萬個元素,Python就重複執行指定的步驟一百萬次, 且通常速度非常快。 另外,編寫for 迴圈時,對於用於儲存列表中每個值的臨時變數,可指定任何名稱。然而,選擇描述單個列表元素的有意義的名稱大有幫助。例如,對於小貓列表、小狗列表和 一般性列表,像下面這樣編寫for 迴圈的第一行程式碼是不錯的選擇: 這些命名約定有助於你明白for 迴圈中將對每個元素執行的操作。使用單數和複數式名稱,可幫助你判斷程式碼段處理的是單個列表元素還是整個列表。 2. 在 for 循 環中 執行 更多 的操 作 在for 迴圈中,可對每個元素執行任何操作。下面來擴充套件前面的示例,對於每位魔術師,都列印一條訊息,指出他的表演太精彩了。 相比於前一個示例,唯一的不同是對於每位魔術師,都列印了一條以其名字為抬頭的訊息。這個迴圈第一次迭代時,變數magician 的值為'alice' ,因此Python列印 的第一條訊息的抬頭為'Alice' 。第二次迭代時,訊息的抬頭為'David' ,而第三次迭代時,抬頭為'Carolina' 。 下面的輸出表明,對於列表中的每位魔術師,都列印了一條個性化訊息: 在for 迴圈中,想包含多少行程式碼都可以。在程式碼行for magician in magicians 後面,每個縮排的程式碼行都是迴圈的一部分,且將針對列表中的每個值都執行一次。因 此,可對列表中的每個值執行任意次數的操作。 下面再新增一行程式碼,告訴每位魔術師,我們期待他的下一次表演: 由於兩條print 語句都縮排了,因此它們都將針對列表中的每位魔術師執行一次。第二條print 語句中的換行符"\n" 在每次迭代結束後都插入一個空行,從而整潔地 將針對各位魔術師的訊息編組: 在for 迴圈中,想包含多少行程式碼都可以。實際上,你會發現使用for 迴圈對每個元素執行眾多不同的操作很有用。 3. 在for 循 環結 束後 執行 一些 操作 for 迴圈結束後再怎麼做呢?通常,你需要提供總結性輸出或接著執行程式必須完成的其他任務。 在for 迴圈後面,沒有縮排的程式碼都只執行一次,而不會重複執行。下面來列印一條向全體魔術師致謝的訊息,感謝他們的精彩表演。想要在列印給各位魔術師的訊息後面列印 一條給全體魔術師的致謝訊息,需要將相應的程式碼放在for 迴圈後面,且不縮排: 你在前面看到了,開頭兩條print 語句針對列表中每位魔術師重複執行。然而,由於第三條print 語句沒有縮排,因此只執行一次: 使用for 迴圈處理資料是一種對資料集執行整體操作的不錯的方式。例如,你可能使用for 迴圈來初始化遊戲——遍歷角色列表,將每個角色都顯示到螢幕上;再在迴圈後面添 加一個不縮排的程式碼塊,在螢幕上繪製所有角色後顯示一個PlayNow。 |
來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69985967/viewspace-2736315/,如需轉載,請註明出處,否則將追究法律責任。
相關文章
- 【編測編學】零基礎學python_11_列表(切片+遍歷切片+複製)Python
- 【編測編學】零基礎學python_10_列表(建立數值列表 )Python
- 【編測編學】零基礎學python_06_列表(認識和使用列表)Python
- Python基礎-列表操作(2):列表的遍歷和數字列表Python
- 【編測編學】零基礎學python_08_列表(排序+反轉+長度)Python排序
- 【編測編學】零基礎學python_07_列表(修改、新增和刪除元素)Python
- list列表運算子,列表元素的遍歷,列表的方法,生成列表,巢狀的列表|python自學筆記(四)巢狀Python筆記
- 4.1 Python -- 遍歷整個列表Python
- Python零基礎學習筆記(十五)——list(列表)Python筆記
- python 元組,列表 迴圈遍歷Python
- C++--Win32--列表編輯--獲取列表內容--獲取列表行數--修改列表內容C++Win32
- Python基礎學習3——列表Python
- python基礎(三)——操作列表Python
- Python學習之路3-操作列表Python
- Python 學習之元組列表Python
- Python新手常見問題五:在遍歷列表的同時又修改該列表Python
- 列表頁取出刪除編輯功能
- Python學習-初始列表Python
- Python 學習之列表Python
- Python元組、列表、集合及列表去重操作Python
- 【編測編學】零基礎學python_04_字串(刪除空白)Python字串
- Python基礎——while、字串、列表及操作PythonWhile字串
- 列表巢狀操作巢狀
- Python列表切片操作Python
- React-列表元件(通知列表、私信列表、虛擬列表)React元件
- react基礎之-- 列表迴圈React
- 【編測編學】零基礎學python_02_字串(大小寫轉換)Python字串
- Python中列表遍歷使用range和enumerate的區別Python
- 『無為則無心』Python序列 — 19、Python列表的其他操作(切片和遍歷)Python
- 仿 iOS 列表的編輯功能 – 排序篇iOS排序
- Python列表基礎Python
- Python 列表操作指南1Python
- Python 列表操作指南3Python
- 列表及相關操作
- 列表和字典的操作
- 例2.3 列表操作示例
- Python列表操作方法Python
- python中的列表操作Python