帶你學習Python中優雅的for循環
For循環是必不可少的編程技能。本文讓我們了解如何正確在Python中使用它們。
像任何其他編程語言一樣,Python循環是避免編寫重復代碼的好方法。但是,與Python的while循環不同,for循環是確定的控制流語句,可為您提供對系列中每個項目的更多權限。
無論您是Python初學者還是已經有一些使用它的經驗,扎實地了解它的for循環都是解決與數組相關的問題的關鍵。在這里,我們來看看Python的for循環是如何工作的,以及一些如何使用它來解決編碼難題的示例。
For循環如何在Python中工作
Python的for循環通過遍歷數組的序列來工作。從本質上講,它在處理諸如字符串,列表,元組,字典或集合之類的序列時很有用。一個在關鍵字通常遵循了Python中循環。一個用于循環在所有的編程語言相似的特點。例如,盡管存在語法差異,但是Java的for循環的特性類似于Python的for循環的工作方式。Python for循環的常用語法如下:
- for new_variable in parent_variable:
- execute some statements
如前所述,與while循環不同,for循環功能更強大,因為它在流中提供了更多的控制。如何使用Python的For循環:實際示例現在,讓我們看一些如何在Python中使用for循環的實際示例。下面的代碼段輸出列表中的每個項目:
- release = ["linuxmi", "ubuntu", "centos", "debian", "redhat"]
- for i in release:
- print(i)
您還可以修改上面的代碼以輸出具有字母“ a”的任何項目:
- release = ["linuxmi", "ubuntu", "centos", "debian", "redhat"]
- for i in release:
- if "a" in i:
- print(i)
Python中 的for循環也采用直接的else語句:
- b=[2, 3, 5]
- for i in b:
- print(i)
- else:
- print("循環結束")
您也可以使用break語句來更改for循環的流程:
- b=[2, 3, 5]
- for i in b:
- if i>3:
- break
- print(i)
您還可以使用continue關鍵字的循環:
- b=[2, 3, 5]
- for i in b:
- if i>3:
- continue
- print(i)
如下圖:
在Python中使用帶有列表和字符串文字的for循環
現在看一下下面的代碼,輸出1到100之間的所有正整數。為此,您首先要使用Python的內置range函數創建1到100之間的數字列表:
- for x in range(1, 101):
- print(x)
您可以通過引入條件語句來輸出1到100之間的所有奇數來修改該代碼塊:
- for x in range(1, 101):
- if x%2==1:
- print(x)
但是,您也可以在上面代碼的輸出中創建一個“ 2 by output”乘法表。要做到這一點,你只需要再添加一些如下這樣的語句,如下所示:
- for x in range(1, 101):
- if x%2==1:
- print(x, "x", 2, "=", x * 2)
如下圖:
現在,您已經了解了for循環如何使用整數列表。讓我們看一下如何在字符串中使用for循環。
下面的代碼返回句子中每個字符串的序列:
- a = "linuxmi"
- for i in a:
- print(i)
我們還可以使用for循環來計算變量a中的字符串(包括空格)的數量:
- a = ["welcome linuxmi.com"]
- for i in a:
- print(i.count(''))
但是,您也可以將for循環放在單獨的變量中,并通過像上面這樣重寫代碼來獲得類似的結果:
- a = ["welcome linuxmi.com"]
- c=[b.count('') for b in a]
- print(c)
注意:要獲取字符計數,請確保count關鍵字后面的括號中的引號之間沒有空格。
您還可以修改上面最后兩個代碼片段中的每一個,以使用for循環創建一個簡單的單詞計數器。在這種情況下,你需要做的是在括號中的每個引號之間插入一個空格:
- a = ["welcome linuxmi.com"]
- for i in a:
- print(i.count(' ') + 1)
如下圖:
就像您對字符計數所做的一樣,您還可以通過將for循環放在這樣的變量中來重寫上面的單詞計數代碼:
- a = ["welcome linuxmi.com"]
- c=[b.count(' ') + 1 for b in a]
- print(c)
請一定要注意括號中的引號之間的單個空格。
如下圖:
對數組使用Python For循環
您也可以使用for循環從數組中獲取特定元素。
假設您有一組水牛buffalo,“健康healthy”動物的值為“是Yes”,而“不健康”水牛buffalo的值為“否No”。每只水牛buffalo都有一個唯一的名稱,您想隔離所有患病的水牛buffalo。
您可以使用for循環輸出所有不健康的水牛buffalo。要查看在這種情況下for循環的有用性,下面的代碼輸出數組中所有不健康的水牛buffalo的名稱:
- array = [{"name":"buffalo1", "healthy":"Yes"},
- {"name":"buffalo3", "healthy":"No"},
- {"name":"buffalo4", "healthy":"Yes"},
- {"name":"buffalo5", "healthy":"Yes"},
- {"name":"buffalo8", "healthy":"No"},
- {"name":"buffalo7", "healthy":"No"},
- {"name":"buffalo9", "healthy":"No"}
- ]
- for buffalos in array:
- if buffalos["healthy"]=="No":
- print("Quarantine", buffalos["name"])
如下圖:
OK,本文就這樣,希望對你有所幫助!