AI學習 Day02 流程控制結構

本文章最初發表在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)
    

注意:上面代碼是讓你意識到 流程控制結構 在編程中的 重要性便利性,具體用法見下面的講解。

選擇流程

單分支

  1. 語法結構:

    if 條件表達式:
        代碼指令
    

    注意:

    • 條件表達式可以是 比較運算符邏輯運算符兩者混合形式

    • python代碼要嚴格遵守縮進規則,正確縮進:

      錯誤縮進:

      Pycharm會自動縮進哦!

  2. 案例:鍵盤讀取成績,如果成績>=60分,輸出“成績合格!”,否則不做輸出。

    score = int(input("請輸入成績:"))
    if score >= 60:
        print("成績合格!")
    

    運行結果:

    小竅門:上gif吧,默認回車後會自動縮進,加pass後自動取消縮進,看不懂可以忽略。

雙分支

  1. 區別:成績>=60時輸出一句話單分支可以實現,如果還想<60時輸出另一句話那就用到雙分支。

  2. 語法:

    if 條件表達式:
        代碼指令
    else:
        代碼指令
    
  3. 案例:鍵盤讀取成績,如果成績>=60分,輸出“成績合格!”,否則輸出“成績不合格!”。

    score = int(input("請輸入成績:"))
    if score >= 60:
        print("成績合格!")
        pass
    else:
        print("成績不合格!")
        pass
    

    運行結果:

    注意:代碼中的pass可以不加!

多分支

  1. 區別:原來基礎上加一條成績=100輸出“真優秀!”,就要用到多分支。

  2. 語法:

    if 條件表達式:
        代碼指令
    elif:
        代碼指令
    else:
        代碼指令
    
  3. 案例:簡單讀取成績,如果成績=100分,輸出“真優秀!”,如果成績>=60分<100分,輸出“成績合格!”,否則輸出“成績不合格!”。

    score = int(input("請輸入成績:"))
    if score == 100:
        print("真優秀!")
    elif score >= 60:
        print("成績合格!")
    else:
        print("成績不合格!")
    

    運行結果:

循環流程

while

循環次數不確定時使用

  1. 語法:

    while 條件表達式:
        代碼指令
    
  2. 要素:

    • 初始值
    • 條件表達式
    • 計數變量的變化
  3. 案例:輸出30以內2的倍數。

    cnt = 1  # 初始值
    while cnt * 2 <= 30:  # 條件表達式
        print(str(cnt * 2), end=' ') # end='',不換行輸出
        cnt += 1  # 計數變量的變化
    

    運行結果:

for

循環次數確定時使用

  1. 語法:

    for 變量 in 容器:
        代碼指令
    
  2. 要素:

    • 變量
    • 容器(集合、列表。。)
  3. 案例:遍歷字符串“大家好,我是練習生菜徐坤!”。

    str = "大家好,我是練習生菜徐坤!"
    for i in str:
        print(i)
    

    運行結果:

    注意:上例說明字符串也是一個集合(字符串類型的集合)

  4. 拓展range函數:生成一個數據集合列表

    • 語法:range(起始值,結束值+1,步長)

    • 注意:步長不能爲0且上述範圍爲 左閉右開區間

    • 案例:遍歷1到10並輸出。

      for i in range(1, 11):  # 步長默認爲1
          print(i, end=' ')
      

      運行結果:

break/continue

  1. 含義:

    • break:跳出循環
    • continue:跳過本次循環
  2. 案例1:輸出所有小於10的正整數:

    for i in range(1, 100): # 遍歷1-99
        if i >= 10:
            break  # >=10時,跳出循環
        print(i, end=' ')
    

    運行結果:

  3. 案例2:輸出所有<10的偶正整數。

    for i in range(1, 11):
        if i % 2 != 0:
            continue
        print(i, end=' ')
    

    運行結果:


不足之處,歡迎留言,會及時回覆,及時更正!

創作不易,感謝支持!

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章