本文章最初發表在XJHui’s Blog,未經允許,任何人禁止轉載!
爲使您獲得最好的閱讀體驗,強烈建議您點擊 這裏 前往 XJHui’s Blog 查看!
引入
Day1 學了怎麼輸入、輸出一些東西,但這些完全不能滿足編程的需要。
-
案例1:判斷互不相等的兩個數的大小並輸出較大的那個數。
很顯然,簡單的輸入輸出是實現不了的,這裏要用到
選擇流程控制
:a, b = 1, 2 if a > b: print(a) else: print(b)
-
案例2:輸出0到10。
你心裏想:簡單,看我的代碼:
print("1 2 3 4 5 6 7 8 9 10")
這是輸出1-10,那要是改成1-100000?上面那樣輸出豈不是要類似!
這裏要用到
循環流程控制
:for i in range(11): print(i)
注意:上面代碼是讓你意識到 流程控制結構
在編程中的 重要性
和 便利性
,具體用法見下面的講解。
選擇流程
單分支
-
語法結構:
if 條件表達式: 代碼指令
注意:
-
條件表達式可以是
比較運算符
、邏輯運算符
、兩者混合形式
-
python代碼要嚴格遵守縮進規則,正確縮進:
錯誤縮進:
Pycharm會自動縮進哦!
-
-
案例:鍵盤讀取成績,如果成績>=60分,輸出“成績合格!”,否則不做輸出。
score = int(input("請輸入成績:")) if score >= 60: print("成績合格!")
運行結果:
小竅門:上gif吧,默認回車後會自動縮進,加pass後自動取消縮進,看不懂可以忽略。
雙分支
-
區別:成績>=60時輸出一句話單分支可以實現,如果還想<60時輸出另一句話那就用到雙分支。
-
語法:
if 條件表達式: 代碼指令 else: 代碼指令
-
案例:鍵盤讀取成績,如果成績>=60分,輸出“成績合格!”,否則輸出“成績不合格!”。
score = int(input("請輸入成績:")) if score >= 60: print("成績合格!") pass else: print("成績不合格!") pass
運行結果:
注意:代碼中的pass可以不加!
多分支
-
區別:原來基礎上加一條成績=100輸出“真優秀!”,就要用到多分支。
-
語法:
if 條件表達式: 代碼指令 elif: 代碼指令 else: 代碼指令
-
案例:簡單讀取成績,如果成績=100分,輸出“真優秀!”,如果成績>=60分<100分,輸出“成績合格!”,否則輸出“成績不合格!”。
score = int(input("請輸入成績:")) if score == 100: print("真優秀!") elif score >= 60: print("成績合格!") else: print("成績不合格!")
運行結果:
循環流程
while
循環次數不確定時使用
-
語法:
while 條件表達式: 代碼指令
-
要素:
- 初始值
- 條件表達式
- 計數變量的變化
-
案例:輸出30以內2的倍數。
cnt = 1 # 初始值 while cnt * 2 <= 30: # 條件表達式 print(str(cnt * 2), end=' ') # end='',不換行輸出 cnt += 1 # 計數變量的變化
運行結果:
for
循環次數確定時使用
-
語法:
for 變量 in 容器: 代碼指令
-
要素:
- 變量
- 容器(集合、列表。。)
-
案例:遍歷字符串“大家好,我是練習生菜徐坤!”。
str = "大家好,我是練習生菜徐坤!" for i in str: print(i)
運行結果:
注意:上例說明字符串也是一個集合(字符串類型的集合)
-
拓展range函數:生成一個數據集合列表
-
語法:range(起始值,結束值+1,步長)
-
注意:步長不能爲0且上述範圍爲
左閉右開區間
-
案例:遍歷1到10並輸出。
for i in range(1, 11): # 步長默認爲1 print(i, end=' ')
運行結果:
-
break/continue
-
含義:
- break:跳出循環
- continue:跳過本次循環
-
案例1:輸出所有小於10的正整數:
for i in range(1, 100): # 遍歷1-99 if i >= 10: break # >=10時,跳出循環 print(i, end=' ')
運行結果:
-
案例2:輸出所有<10的偶正整數。
for i in range(1, 11): if i % 2 != 0: continue print(i, end=' ')
運行結果:
不足之處,歡迎留言,會及時回覆,及時更正!
創作不易,感謝支持!