Python學習之路9 迴圈的總結

2021-10-12 03:00:10 字數 3005 閱讀 1066

距離上一次的學習,我們學習了whlie迴圈與whlie迴圈巢狀,今天繼續學習迴圈。

語法是:

while 條件:

條件成立重複執行

else:

迴圈正常結束之後要執行的**

舉個例子,劉備三顧茅廬請諸葛亮出山,沒有三次來訪,諸葛亮鐵定是不答應出山的。那麼用迴圈如何來表達?

需求:劉備三顧茅廬 登門拜訪3次,完成之後諸葛亮才出山

i = 1

while i <= 3:

print("劉備登門拜訪")

i += 1

else:

print("諸葛亮出山")

劉備登門拜訪

劉備登門拜訪

劉備登門拜訪

諸葛亮出山

退出迴圈我在前面的學習中有提到,break與continue。

break:

i = 1

while i <= 3:

if i == 2:

print("才登門兩次誠意不夠")

break

print("劉備登門拜訪")

i += 1

else:

print("諸葛亮出山")

劉備登門拜訪

才登門兩次誠意不夠

注意哈:else 指的是迴圈正常結束之後要執行的**,如果是break這種中途要終止迴圈的情況下,else下方的**就不執行了。

continue:

i = 1

while i <= 3:

if i == 2:

print("才登門兩次誠意不夠")

continue

print("劉備登門拜訪")

i += 1

else:

print("諸葛亮出山")

我就是把break的**複製貼上,把「break」修改為「continue」,這個時候就出現了死迴圈,所以並不能把break與continue直接相等的去的使用。正確的應該是:

i = 1

while i <= 3:

if i == 2:

i +=1

continue

print("劉備登門拜訪")

i += 1

else:

print("諸葛亮出山")

劉備登門拜訪

劉備登門拜訪

諸葛亮出山

因此,要牢記break與continue的不同點:

1、語法:

for 臨時變數 in 序列:

重複執行的**

...else:

迴圈正常結束之後要執行的**

那按照語法來個例子:

str1 = "cat"

for i in str1:

print(i)

else:

print("喵")

輸出的是:

cat

我們來看看break與contin在for 迴圈的使用。

break:

str1 = "littlecat"

for i in str1:

if i == "c":

print("書寫完成")

break

print(i)

else:

print("喵")

輸出的是:

lit

tle書寫完成

continue:

str1 = "littlecat"

for i in str1:

if i == "c":

continue

print("書寫完成")

print(i)

else:

print("喵")

輸出的是:

lit

tlea

t喵

實際上,退出迴圈中的break與continue,在whlie 與for 迴圈中作用都是一樣的。

1、whlie 迴圈:

while 條件:

條件成立重複執行的**1

條件成立重複執行的**2

......

2、whlie 迴圈巢狀:

while 條件1:

條件1執行的**

......

while 條件2:

條件2執行的**

......

print(結果)

3、for 迴圈:

for 臨時變數 in 序列:

重複執行的**

...else:

迴圈正常結束之後要執行的**

4、對於退出迴圈:5、else 的應用:好啦,整個迴圈就學習完啦。

產品經理提需求莫過於主流程走不通,那麼就走分支流程,實際上就是迴圈的使用。說的這麼簡單,實際開發過程中的困難可就不是一兩句話能說清楚的了。

給你個眼神自己體會:

python學習之路9 初識函式

函式是帶名字的 塊。要執行函式定義的特定任務,可呼叫該函式。需要在程式中多次執行同一任務時,你無需反覆編寫完成該任務的 而只需要呼叫執行該任務的函式,讓python執行其中的 你將發現,通過使用函式,程式的編寫 閱讀 測試和修復都將更容易。1 定義函式 def 定義的 函式名稱 引數 函式內容 re...

python學習之路day2 迴圈

猜三次年齡,猜錯了三次程式退出 coding utf 8 age 56 count 0 while count 3 guess age int input 請輸入年齡 if guess age age print 你猜對了 break elif guess age age print 猜大了 els...

python學習筆記 廖雪峰(9 迴圈)

1 for.in迴圈,依次把list或tuple中的每個元素迭代出來,看例子 names michael bob tracy for name in names print name 2 比如range 5 生成的序列是從0開始小於5的整數 list range 5 0,1,2,3,4 3 whil...