Python中有兩種循環,分別為:for循環和while循環。
1. for循環
for循環可以用來遍歷某一對象(遍歷:通俗點說,就是把這個循環中的第一個元素到最後一個元素依次訪問一次)。for循環的基本結構如下:
具體看這個案例:
設計一個函數,在桌面創建10個文本,用數字從1-10依次給它們命名。
現在我們來理解下每行代碼。
第1行:定義一個text_create函數;
第2行:給變數path賦值為桌面路徑;
第3行:將1-10範圍內的每個數字依次裝入變數text_name中,每次命名一個文件;
第5行:打開位於桌面的txt文件,並給每一個text執行寫入操作;
第7行:給每個文件依次命名;
第8行:關閉文件;
第9行:執行完一次命名操作后顯示一個Done;
第11行:調用函數。
案例中提到了「with...as」,在Python中,「with...as」語法是用來代替傳統的「try...finally」的。
比如:打開桌面的test文件,嘗試讀取文件內容,最後關閉文件。
雖然這段代碼執行良好,但比較冗長,換成用「with...as」來表達后,代碼會更為簡潔。
除了上面的單層循環之外,還有一種常見的循環,是嵌套循環。
比如用嵌套循環實現九九乘法口訣。
最外層的循環,依次將1-9的數字儲存在變數i中;變數i每取一次值,內層循環就依次將1-9的數字儲存在變數j中;最後列印出當前的i、j、和i*j的值。
從Python2.6開始,新增了format函數,用來格式化字元串,可以通過{}.format來實現。在上面這個案例中,將i、j、i*j的值分別存入前面的{ }中,然後做好格式化,統一形式。
2. while循環
for循環和while循環,兩者的相同點在於都能循環做一件重複的事情;不同點在於,for循環是在序列窮盡時停止,while循環是在條件不成立時停止。
具體,看下面這個例子:
給變數count賦值為0,while True就是條件成立,顯示「重複一遍」,此時count被重新賦值為count+1,如果count等於3時,跳出循環。最後一句的break是跳出最近一層的循環,如果不跳出,程序會無限制循環下去,造成死循環。
如果不想用break來跳出循環,也可以改變使循環成立的條件。
將上面的例子可轉化為如下:
到這裡,關於邏輯判斷到循環的內容已經全部結束,後面會做下小練習,是幾乎大家都玩過的一個小遊戲:猜大小。
操作環境:Python版本,3.6;PyCharm版本,2016.2;電腦:Mac
----- End -----