天天看點

Python學習筆記6——文法基礎習題多路分支if語句補充循環語句for循環for-else語句break, continue, pass

習題

  • 考試成績判斷
  • 成績由使用者輸入
  • 90以上:優秀
  • 80-90:良
  • 70-80:中
  • 60-70:平
  • 60以下:我沒你這學生
# 我的代碼
a = int(input())

if a > 90:
    print("優秀")
if 80 < a <= 90:
    print("良")
if 70 < a <=80:
    print("中")
if 60 < a <=70:
    print("平")
if a<=60:
    print("我沒你這學生")

           
59
我沒你這學生
           
# 老師的代碼
# 輸入成績,需要用到input函數
# input輸入的值全部是字元串類型
score = input("請輸入成績,必須是數字呀:")
# 解決輸入是字元串問題
score = int(score)
if score > 90:
    print("你考的很好啊,小朋友")
if score >= 80 and score < 90:
    print("良")
if score >= 70 and score < 80:
    print("中")
if score >= 60 and score < 70:
    print("平")
if score < 60:
    print("下次好好聽課吧")
           
請輸入成績,必須是數字呀:84
良
           

多路分支

  • 很多分支的情況,叫多路分支

if 條件表達式:

語句1

elif 條件表達式:

語句2

elif 條件表達式:

語句3

else: # 上面的都沒有滿足,就執行else下面語句

語句4

  • elif可以有好多個,根據實際情況
  • else可選
  • 多路分支最多隻會執行一種情況

if語句補充

  • if語句可以嵌套使用,不推薦(邏輯容易混亂,報錯)
  • python沒有switch語句(反正我也不會switch)
# 套用以上例子
# score 存放學生成績
score = input("請輸入學生的成績:")
score = int(score)

if score >=90:
    print("A")
elif score >= 80:
    print("B")
elif score >= 70:
    print("C")
elif score >= 60:
    print("D")
else:
    print("走開,我沒你這學生")
           
請輸入學生的成績:56
走開,我沒你這學生
           

循環語句

  • 重複執行某一個固定的動作或者任務
  • 分類
    • for
    • while

for循環

  • 文法

for 變量 in 序列:

語句1

語句2

# 清單知識以後會講
# 比如[1,2,3,4]

list_one = [1,2,3,4]
for num in list_one:
    print(num)
    print(num+100)
    print(num+1000)
           
1
101
1001
2
102
1002
3
103
1003
4
104
1004
           
# 列印學生清單姓名
# 如果是jingjing,是我的最愛
# 如果是别的學生,那要冷酷的拒絕他

stu_list = ['王大眼','李美麗','韓小喵']

for stu in stu_list:
    if stu == '韓小喵':
        print('小喵,你就從了老衲吧')
    else:
        print('同學,你就饒了老衲吧')
           
同學,你就饒了老衲吧
同學,你就饒了老衲吧
曉靜,你就從了老衲吧
           

for-else語句

  • for循環結束的時候,有時候需要執行一些收尾工作,此時需要執行以下else語句
  • else語句是可選語句
# for-else語句
# 列印清單中的同學
# 如果沒有在清單中,或者清單結束了,我們需要列印提示語句,表示不再愛了

stu_list = ['王大眼','李美麗','韓小喵']
for stu in stu_list:
    
           
# 列印學生清單姓名
# 如果是jingjing,是我的最愛
# 如果是别的學生,那要冷酷的拒絕他

stu_list = ['王大眼','李美麗','韓小喵']

for stu in stu_list:
    if stu == '韓小喵':
        print('小喵,你就從了老衲吧')
    else:
        print('同學,你就饒了老衲吧')
else:
    print('不會再愛了')
           
同學,你就饒了老衲吧
同學,你就饒了老衲吧
小喵,你就從了老衲吧
不會再愛了
           

break, continue, pass

  • break:無條件結束整個循環,簡稱循環猝死
# 确定一個數字隊列中是否包含數字7
# 确定是否包含,隻要找到一個即可确定,不需要再繼續找下去,是以使用break
dig_list = [3,4,5,6,7,564,213,4,5,7]

for dig in dig_list:
    if dig ==7:
        print('哈哈哈,找到了')
        break
    else:
        print(dig)
           
3
4
5
6
哈哈哈,找到了