# 三大結構
- 循環
- 分支
- 循環
. . .
In?[?]:
# 分支
- 分支的基本語法
- if 條件表達式:
語句1
語句2
語句3
.....
- 條件表達式就是計算結果必須是布爾值的表達式
- 表達式后面的冒號覺對不能少
- 注意 if 后面出現的語句,如果屬于 if 語句塊,則必須同一個縮進等級
- 條件表達式結果位 True 執行 if 后面的縮進語句塊
. . .
In?[8]:
#if 語句練習
#如果age小于18歲,則打印信息,去叫家長
age = 19
if 10 <= age <= 18:
print("去叫家長")
print("帶不動")
print("走吧")
print("大兄弟") #不滿足條件的會執行下一條與 if 齊平的代碼
. . .
In?[?]:
### 雙向分支
- if ...else...語句
if 條件表達式:
語句1
語句2
....
else:
語句1
語句2
.....
- 雙向分支有兩個分支,當程序執行到 if....else.....語句的時候,一定會執行 if 或 else 中的一個,一次也只能執行一個
- 縮進問題,if 和 else 一個層級,其余的語句塊是一個層級,同一語句塊的縮進是一樣的。
. . .
In?[4]:
# input 的作用
# 1. 在屏幕上輸出括號內的字符串
# 2. 接受用戶輸入的內容并返回到程序
# 3. input 返回的內容一定是字符串類型
gender = input("輸入性別")
print("你輸入的性別是:{0}".format(gender))
?
if gender == "男的":
print('去干苦力')
else:
print("吃飯去")
print('開始干活了')
. . .
In?[?]:
# 多向分支的案例
# 考試成績的判斷
# 90以上:輸出優秀
# 80-90:良
# 70-80:中等
# 60-70:一般
# 60以下:輸出,學渣
. . .
In?[5]:
# score 存放學生成績
#注意 input 的返回值類型
score = input("學生成績:")
# 需要吧 str (字符串)轉換成 int(數字)
score = int(score)
if score >= 90:
print("A")
if score >= 80 and score<90:
print("B")
if score >= 70 and score<80:
print("C")
if score >= 60 and score<70:
print("D")
if score < 60:
print("頭疼")
. . .
In?[?]:
## 多路分支
- 很多分支的情況,簡稱多路分支
?
if :條件表達式:
語句1
.......
elif 條件語句:
語句1
.....
.....
else:
語句2
......
- elif 可以有很多個
- else 可選
- 多個分支只會選一個執行
. . .
In?[6]:
score = input("輸入成績")
score = int(score)
if score >90:
print("A")
if score >=80:
print("B")
if score >=70:
print("C")
if score >=60:
print("D")
else:
print("go home")
. . .
## if 語句其他:
? ? ? ?- if 語句可以嵌套使用,但不推薦
? ? ? ?- python 語句里沒有 switch-case語句
if 語句其他:?
- if 語句可以嵌套使用,但不推薦- python 語句里沒有 switch-case語句
### 循環語句
?- 重復執行某些固定動作或處理某些基本固定的事務
?- 分類:
? ? ? ? - for 循環
? ? ? ? - while 循環
## for 循環
? ? - for 循環
? ? ? ? ? for 變量 in 序列:
? ? ? ? ? ? ? ?語句1
? ? ? ? ? ? ? ?語句2
? ? ? ? ? ? ? ?......
循環語句?
- 重復執行某些固定動作或處理某些基本固定的事務
-
分類:
- for 循環- while 循環
for 循環?
- for 循環
for 變量 in 序列:語句1語句2......
- for 循環
In?[11]:
### 列表就是一列數字或其他值,一般用中括號表示
# 例如: 【'ruirui','halou','xiaoji','dunmogu'】
?
# 打印列表姓名
# 如果是吃的,肯定是我最愛的
# 如果是做事,我要裝睡覺
for name in ['ruirui','zuo','xiaoji','dunmigu']:
print(name)
if name =="ruirui":
print("我的最愛{0}".format(name))
else:
print("已睡,勿擾")
. . .
In?[?]:
## range 介紹
- 生成一個數字序列
- 具體范圍可以設定
. . .
In?[13]:
# range 練習
# 打印一到十的數字
# 注意 一般在 python 中,如果有表示數字范圍的兩個數,一般是包含左邊的數字不包括右邊的數字
# randint 是特例,它是左右都包含
# randint 函數在 python 3和python2 中有嚴重的區別
for a in range(1,10):# range 函數會自動生產一列整數
print(a)
. . .
In?[?]:
## for-else 語句
- 當 for 循環結束的時候,就會執行 else 語句
- else 語句是可選語句
. . .
In?[14]:
# for-else 語句
#打印列表中的同學
# 如果沒有在列表中,或列表結束了,我們要打印提示語句,表示不在愛了
for name in ['ruirui','zuo','xiaoji','dunmigu']:
print(name)
if name =="ruirui":
print("我的最愛{0}".format(name))
else:
print("已睡,勿擾")
else:
print("你不給我吃的,我不再愛你了")
. . .
# for 循環之 break continue pass
- break:無條件結束整個循環,簡稱猝死
- continue ;無條件結束本循環,從新進入下一輪
- pass :表示路過
for 循環之 break continue pass?
- break:無條件結束整個循環,簡稱猝死
- continue ;無條件結束本循環,從新進入下一輪
- pass :表示路過
In?[16]:
# break 語句練習
# 在數字1-10中,尋找數字7,一旦找到,打印出來,其余的什么都不做
# 在 foe 循環中的變量表示,一般用 i k m n 或者indx idx item之類
# 在 python 中,如果循環變量名稱不重要,可以用一個下劃線 “ _ ”代替
for i in range(1,11):
if i == 7:
print("任務結束")
break
else:
print(i)
. . .
In?[19]:
# comtinue 語法練習
# 在數字一到十中,尋到所有偶數,找的并打印
for i in range(1,11):
if i % 2 == 1:
continue
else:
print("{0}是偶數".format(i))
. . .
In?[26]:
for i in range(1,11):
if i % 2 == 1:
print("{0}是偶數".format(i))
. . .
In?[27]:
# 本案例把 continue 作用和用法完美顯示
for i in range(1,11):
if i % 2 == 1:
continue
print("{0}是偶數".format(i))
. . .
In?[30]:
## pass 例子 一般用于占位
for i in range(1,11):
pass
print("ruirui")