天天看點

python之路-循環語句While、Break、Continue和For

文章目錄

    • x-mind知識點總結
    • 程式的三種結構
    • while基本文法
    • 死循環
    • 循環的計數習慣
    • 課堂練習
    • 循環計數
    • break終止循環
    • 人造死循環
    • continue
    • 循環嵌套
      • 循環嵌套輸出三角形
      • 輸出數字三角形
    • for循環
    • while和for的不同
    • range函數
    • 用for實作指定次數的循環(用for替換while)

x-mind知識點總結

python之路-循環語句While、Break、Continue和For

程式的三種結構

順序,代碼自上而下執行

分支,根據條件有選擇的執行特定代碼循環,根據條件循環執行特定代碼

python之路-循環語句While、Break、Continue和For
python之路-循環語句While、Break、Continue和For
python之路-循環語句While、Break、Continue和For

如果要輸出的是100個hello world,該怎麼做?

python之路-循環語句While、Break、Continue和For

while基本文法

  • 文法
while 條件
	要循環執行的代碼
# 如果條件成立,那麼循環執行,如果條件不成立,那麼循環終止
           

死循環

  • 程式應避免出現死循環
a = 0
while a < 3:
print("hello word")
# a的值永遠不會變,是以循環條件永遠成立
           

循環的計數習慣

  • 人類計數習慣從1開始
  • 程式計數習慣從0開始,除非有明确的要求,可以不從0開始,否則一定要從0開始計數
a = 0
while a < 6:
	print(a)
	a += 1

           
python之路-循環語句While、Break、Continue和For

課堂練習

python之路-循環語句While、Break、Continue和For
a = 5
while a >= 0:
	print(a)
	a -= 1
           
python之路-循環語句While、Break、Continue和For

循環計數

  • 循環在程式中經常用到的功能是循環計數
  • 先在循環開始之前定義一個變量,用來存放計算結果
  • 在循環内部對這個變量進行計算循環完成後
  • 輸出這個變量的值
python之路-循環語句While、Break、Continue和For
sum = 0
a = 0
while a <= 100:
	sum = sum + a
	a += 1
print(sum)
           
python之路-循環語句While、Break、Continue和For
python之路-循環語句While、Break、Continue和For
sum = 0
a = 300 
while a <= 415
	sum += a
	a += 1
print(sum)
           

break終止循環

  • break必須放到循環内部
  • 如果循環遇到break,立刻終止
  • 一般在循環内部通過if的條件,來執行break,某一條件成立的時候來break
a = 0	
while a < 10:	
	print(a)	
	if a == 3:	
		break	# break執行,循環不在執行了	# break由于是在if語句裡面,是以要縮進兩次
	a += 1	
	# break之後,代碼到這裡了	
           

break 退出循環:在while循環内部,通過input接收使用者輸入,當使用者輸入exit,while循環終止。

a = 0
while a < 100000000:
	str = input(“請輸入一個字元串:”)
	if str == "exit":
		break
	print(str)
	a += 1
           

人造死循環

  • 代碼中循環開始的時候不知道循環次數,可以使用人造死循環
  • 在人造死循環内部,一定要有if結合break來退出循環的機制
# 如果while後面的條件為True,這個while就是一個人為的循環
# 循環内部一定要有if結合break來讓循環退出機制
while True:
	str = input("請輸入一個字元串")
	if str == “exit”
		break
	print(str)
           

continue

  • 循環一旦遇到continue就不在執行continue下面的循環代碼了,而是直接傳回到循環開始判斷條件
  • continue一定是放到if後面,
a = 0
while a < 5:
	a += 1
	if a == 3:
		continue
	print(a)
           
  • 使用continue一定要注意,因為使用不當很容易成死循環
a = 0
while a < 5:
	if a == 3:
		continue # a等于3的時候,就再也沒機會執行a += 1這個代碼了
	print(a)
	a += 1
           
python之路-循環語句While、Break、Continue和For
# a還是一個循環計數器
# b決定了循環的最大次數
a = 0
b = int(input("請輸入b的值"))

while a <b:
	print("*")
	a += 1
	if a >= 20: # 不管b的值多大,一旦a到了20,循環就退出
	 	break
           

再講一次

python之路-循環語句While、Break、Continue和For
python之路-循環語句While、Break、Continue和For

循環嵌套

  • 一個循環語句裡面還有其他的循環語句文法
  • 文法
while 條件
	while 條件
		代碼
           
num = 0
while num < 2:
    a = 0
    while a < 3:
        print('*', end="")
        a += 1
    print()
    num += 1
           
python之路-循環語句While、Break、Continue和For

循環嵌套輸出三角形

# *
# **
# ***
# 輸出數字三角形
num = 0
while num < 4:
    a = 0
    while a < num:
        print("*", end="")
        a += 1
    print()
    num += 1
print("end")
           
# *
# **
# ***
# ****
# *****
# 輸出數字三角形
num = 0
while num < 6:
    a = 0
    while a < num:
        print("*", end="")
        a += 1
    print()
    num += 1
print("end")
           

輸出數字三角形

# 1
# 12
# 123
# 1234
# 12345
# 輸出數字三角形
num = 0
while num < 6:
    a = 0
    while a < num:
        print(a + 1, end="")
        a += 1
    print()
    num += 1
print("end")
           

for循環

  • for主要是用于周遊字元串
  • 字元串中有幾個字元,for就會循環幾次文法
- 文法
for 變量名 in 字元串:
	循環代碼
str = ‘hello’
for n in str:
	print(n)
           
python之路-循環語句While、Break、Continue和For
str = 'hello itcast'
sum = 0
for n in str:
	sum += 1
print(sum)
           

while和for的不同

  • while用在指定次數的循環
  • for 主 要 用 在 遍 曆
  • while和for可以互換

range函數

  • 生成指定範圍的一個數字序列文法
  • 文法
range(start, stop, step)
start代表範圍的開始
stop代表範圍的結束值,但不包含stop
step步長,可以為負數,正數代表升序範圍,負數代表降序範圍

range(1, 5, 1)
range(1, 5)
range(1, 6, 2)
range(6, 2, -1)
range(6, 2, -2)
           

用for實作指定次數的循環(用for替換while)

for 變量名 in range(開始值,結束值, 步長):
	執行代碼
           
a = 0
while a < 10:
	print(a)
	a += 1
	
for a in range(0, 10):
	print(a)
           
for循環嵌套,結合range實作輸出5行*号
for a in range(0, 5):
	for b in range(0, 5):
		print("*", end="")
	print()
           
# 使用for循環計算50-124之間的偶數累加之和,包含50和124
sum = 0
for i in range(50, 125, 2):
	sum += i
print(sum)