025 程序的循環結構

1、概述

  • 遍歷循環
  • 無限循環
  • 循環控制保留字
  • 循環的高級用法

2、遍歷循環

遍歷某個結構造成的循環運行方式函數

for <循環變量> in <遍歷結構>:
    <語句塊>
  • 從遍歷結構中逐一提取元素,放在循環變量中
  • 由保留字forin組成,完整遍歷全部元素後結束
  • 每次循環,所得到元素放入循環變量,並執行

025-程序的循環結構-01.jpg?x-oss-process=style/watermark

3、遍歷循環的應用

3.1 計數循環(N次)

fro i in range(N):
    <語句塊>
  • 遍歷由range()函數產生的數字序列,產生循環
for i in range(5):
    print(i)
0
1
2
3
4
for i in range(5):
    print('hello:', i)
hello: 0
hello: 1
hello: 2
hello: 3
hello: 4

3.2 計數循環(特定次)

fro i in range(M,N,K):
    <語句塊>
  • 遍歷由range()函數產生的數字序列,產生循環
for i in range(1, 6):
    print(i)
1
2
3
4
5
for i in range(1, 6, 2):
    print('hello:', i)
hello: 1
hello: 3
hello: 5

3.3 字符串遍歷循環

for c  in  s: 
    <語句塊>
  • s是字符串,遍歷字符串每一個字符,產生循環
for c in 'python':
    print(c, end=',')
p,y,t,h,o,n,

3.4 列表遍歷循環

for item  in  ls:
    <語句塊>
  • ls是一個列表,遍歷其每一個元素,產生循環
for item in [123, "PY", 456]:
    print(item, end=",")
123,PY,456,

3.5 文件遍歷循環

for line in  fi:
    <語句塊>
  • fi是一個文件標識符,遍歷其每行,產生循環
# fi.txt
優美勝於醜陋
明瞭勝於隱晦
簡潔勝於複雜
for line in fi:
    print(line)
優美勝於醜陋
明瞭勝於隱晦
簡潔勝於複雜

4、無限循環

由條件控制的循環運行方式code

025-程序的循環結構-02.jpg?x-oss-process=style/watermark

  • 反覆執行語句塊,直到條件不知足時結束
a = 3
while a > 0:
    a = a - 1
    print(a)
2
1
0
# 死循環, (CTRL + C 退出執行) 
a = 3
while a > 0:
    a = a + 1
    print(a)

5、循環控制保留字

5.1 break 和 continue

  • break跳出並結束當前整個循環,執行循環後的語句
  • continue結束當次循環,繼續執行後續次數循環
  • break和continue能夠與for和while循環搭配使用

5.1.1 for

for c in "PYTHON":
    if c == 'T':
        continue
    print(c, end=',')
P,Y,H,O,N,
for c in "PYTHON":
    if c == 'T':
        break
    print(c, end=',')
P,Y,

5.1.2 while

  • break僅跳出當前最內層循環
s = "PYTHON"
while s != "":
    for c in s:
        print(c, end=',')
    s = s[:-1]
P,Y,T,H,O,N,P,Y,T,H,O,P,Y,T,H,P,Y,T,P,Y,P,
s = "PYTHON"
while s != "":
    for c in s:
        if c == 'T':
            break
        print(c, end=',')
    s = s[:-1]
P,Y,P,Y,P,Y,P,Y,P,Y,P,

6、循環的高級用法

6.1 循環的擴展

循環與elseblog

6.1.1 for

for <變量> in <遍歷結構>:
    <語句塊1>
else:
    <語句塊2>

6.1.2 while

while <條件>:
    <語句塊1>
else:
    <語句塊2>
  • 當循環沒有被break語句退出時,執行else語句塊
  • else語句塊做爲"正常"完成循環的獎勵
  • 這裏else的用法與異常處理中else用法類似
for c in "PYTHON":
    if c == "T":
        continue
    print(c, end="")
else:
    print("正常退出")
PYHON正常退出
for c in "PYTHON":
    if c == "T":
        break
    print(c, end="")
else:
    print("正常退出")
PY

7、單元小結

  • for…in 遍歷循環:計數、字符串、列表、文件…
  • while無限循環
  • continuebreak保留字:退出當前循環層次
  • 循環else的高級用法:與break有關
相關文章
相關標籤/搜索