python初学火车座位判断_Python学习第三课 判断(if)语句
判斷(if)語句
目標
● if 語句體驗
● if 語句進階
● 綜合應用
01. if 語句體驗
1.1 if 判斷語句基本語法
在Python中,if 語句就是用來進行判斷的,格式如下:
if 要判斷的條件:
條件成立時,要做的事情
…
注意
代碼縮進為 tab鍵,或者是四個空格
● 在Python開發中,Tab鍵和空格不要混用
1.2 判斷語句演練——判斷年齡
需求
1.定義一個整數變量記錄年齡
2.判斷是否慢18歲(>=)
3.如果滿18歲,允許進網吧嗨皮
# 1.定義一個整數變量記錄年齡
age = 18
# 2.判斷是否慢18歲(>=)
if age >= 18:
print("你已經成年,可以進網吧!")
# 3.如果滿18歲,允許進網吧嗨皮
注意
● if 語句以及縮進部分為整個代碼塊
1.3 else處理條件不滿足的情況
思考:在使用if判斷時,只能做到滿足條件時要做的事情。那如果需要在不滿足條件時,做某些事情,該如何做?
答案:格式如下:
if 要判斷的條件:
條件滿足時,要做的事情
…
else:
條件不滿足時,要做的事情
…
注意
● if 和 else 語句以及各自縮進的部分共同是一個完整的代碼塊
1.4 判斷語句演練——判斷年齡的改進
需求
1、輸入用戶年齡
2、判斷是否慢18
3、滿18,允許進網吧
4、不滿18,提示回家
TIPS:選中要添加注釋的文本,Ctrl+/ 可以同時為所有文本逐行添加#注釋
# 1、輸入用戶年齡
age = int(input("請輸入年齡:"))
# 2、判斷是否慢18
if age >= 18:
# 3、滿18,允許進網吧
print("你已成年,可以進網吧!")
else:
# 4、不滿18,提示回家
print("未成年回家寫作業!")
02.邏輯運算
● 在程序開發中,通常在判斷條件時,會需要同時判斷多個條件
● 只有多個條件都滿足,才能夠執行后續代碼,這個時候需要使用到邏輯運算符
● 邏輯運算符可以吧多個條件按照邏輯進行連接,變成更復雜的條件
● Python中的邏輯運算符有:與and/或or/非not三種
2.1 and
條件1 and 條件2
● 與/并且
● 兩個條件同時滿足,返回TRUE
● 只要有一個不滿足,返回false
條件1
條件2
結果
成立
成立
成立
成立
不成立
不成立
不成立
成立
不成立
不成立
不成立
不成立
2.2 or
條件1 or 條件2
● 或/或者
● 兩個條件只要有一個滿足,返回TRUE
● 兩個條件均不成立,返回false
條件1
條件2
結果
成立
成立
成立
成立
不成立
成立
不成立
成立
成立
不成立
不成立
不成立
2.3 not
not 條件
● 非/不是
條件
結果
成立
不成立
不成立
成立
邏輯運算演練
1、練習1:定義一個整數變量age,編寫代碼判斷年齡是否正確
● 要求年齡在0~100之間
# 1、練習1:定義一個整數變量age,編寫代碼判斷年齡是否正確
age = int(input("請輸入年齡:"))
# 要求年齡在0~100之間
if age >= 0 and age <=100:
print("年齡正常!")
else:
print("年齡不正常!")
2、練習2:定義兩個整數變量python_score,c_score,編寫代碼判斷成績
● 要求只要有一門成績>60就算合格
# 2、練習2:定義兩個整數變量python_score,c_score,編寫代碼判斷成績
python_score = int(input("請輸入Python成績:"))
c_score = int(input("請輸入C語言成績:"))
# 要求只要有一門成績>60就算合格
if python_score > 60 or c_score > 60:
print("考試通過!")
else:
print("考試失敗!")
3、練習3:定義一個布爾型變量is_employee,編寫代碼判斷是否為本公司員工
● 如果不是不允許入內
# 3、練習3:定義一個布爾型變量is_employee,編寫代碼判斷是否為本公司員工
is_employee = True
# 如果不是不允許入內
if not is_employee:
print("非本公司員工,請勿入內!")
03.if 語句進階
3.1 elif
● 在開發中,使用 if 可以判斷條件
● 使用else可以處理條件不成立的情況
● 但是,如果希望再增加一些條件,條件不同,需要執行的代碼也不同時,就要用到elif
● 語法格式如下:
if 條件1:
條件1滿足時執行的代碼
…
elif 條件2:
條件2滿足時,執行的代碼
…
elif 條件3:
條件3滿足時,執行的代碼
…
else:
以上條件都不滿足時,執行的代碼
…
● 對比邏輯運算符的代碼
if 條件1 and 條件2:
條件1滿足且條件2滿足執行的代碼
…
注意
1、elif 和else 都必須和if連用,而不能單獨使用
2、可以將if、elif、else以及各自縮進的代碼,看成一個完整的代碼塊
elif 演練——女朋友的節日
需求:
1、定義holiday_name字符串變量記錄節日名稱
2、如果是情人節應該買玫瑰/看電影
3、如果是平安夜應該買蘋果/吃大餐
4、如果是生日應該買蛋糕
5、其他的日子每天都是節日啊。。。
holiday_name = str(input("請輸入節日:"))
if holiday_name == "情人節":
print("買玫瑰")
print("看電影")
elif holiday_name == "平安夜":
print("買蘋果")
print("吃大餐")
elif holiday_name == "生日":
print("買蛋糕")
else:
print("每天都是節日。。。")
3.2 if 的嵌套
elif的應用場景是:同時判斷多個條件,所有條件是平級的
● 在開發中,使用if進行條件判斷,如果希望在條件成立的執行語句中再添加條件判斷,就可以使用if嵌套
● if的嵌套的應用場景是:在之前條件滿足的前提下,再增加額外的判斷
● if的嵌套的語法格式,除了縮進之外和之前沒有區別
● 語法格式如下:
if 條件1:
條件1滿足執行的代碼
…
if 條件1基礎上的條件2:
條件2滿足時,執行的代碼
…
# 條件2不滿足的處理
else:
條件2不滿足時,執行的代碼
#條件1不滿足時的處理
else:
條件1 不滿足時,執行的代碼
…
if嵌套演練——火車站安檢
需求:
1、定義布爾型變量has_ticket 表示是否有車票
2、定義整形變量knife_length表示刀的長度,單位:厘米
3、首先檢查是否有車票,如果有允許進行安檢
4、過安檢時,檢查刀的長度,判斷是否超過20厘米
● 超過20厘米,提示刀的長度,不允許上車
● 不超過,安檢通過
5、如果沒有車票,不允許進門
has_ticket = True
if has_ticket:
print("車票檢查通過,準備開始安檢!")
knife_length = int(input("請輸入刀的長度:"))
if knife_length >= 20:
print("不能通過安檢!")
else:
print("安檢通過!")
else:
print("沒有車票,不允許進入!")
04.綜合運用——石頭剪刀布
4.1 基礎代碼實現
目標
1、強化多個條件的邏輯運算
2、體會import 導入模塊(“工具包”)的使用
需求
1、從控制臺輸入玩家1要出的拳:石頭(1)/剪刀(2)/布(3)
2、從控制臺輸入玩家2要出的拳:石頭(1)/剪刀(2)/布(3)
3、比較勝負
序號
規則
1
石頭 勝 剪刀
2
剪刀 勝 布
3
布 勝 石頭
# 從控制臺輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3)
player1 = int(input("請輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3):"))
# 從控制臺輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3)
player2 = int(input("請輸入玩家2要出的拳-石頭(1)/剪刀(2)/布(3):"))
print("玩家1選擇的拳是 %d - 玩家2選擇的拳是 %d " % (player1,player2))
# 比較勝負
if ((player1 == 1 and player2 == 2)
or (player1 == 2 and player2 == 3)
or (player1 == 3 and player2 == 1)):
print("玩家1獲勝!")
elif ((player1 == 1 and player2 ==3)
or (player1 == 2 and player2 == 1)
or (player1 == 3 and player2 == 2)):
print("玩家2獲勝!")
else:
print("平局!")
4.2 隨機數的處理
● 在Python中,要使用隨機數,首先需要導入隨機數的模塊——“工具包”
import random
● 導入模塊后,可以直接在模塊名稱后面敲一個 . ,然后按Tab鍵,會提示該模塊中包含的所有函數
● random.randint(a,b),返回【a,b】之間的整數,包含a,b
● 例如:
random.randint(12,20)#生成的隨機數n:12<=n<=20
random.randint(20,20)#結果永遠是20
random.randint(20,18)#該語句是錯誤的,下限必須小于上限
4.3 代碼改進
使玩家2 的出拳由電腦隨機給出
# 導入隨機工具包
import random
# 從控制臺輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3)
player1 = int(input("請輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3):"))
# 從控制臺輸入玩家1要出的拳-石頭(1)/剪刀(2)/布(3)
player2 = random.randint(1,3)
print("玩家1選擇的拳是 %d - 玩家2選擇的拳是 %d " % (player1, player2))
# 比較勝負
if ((player1 == 1 and player2 == 2)
or (player1 == 2 and player2 == 3)
or (player1 == 3 and player2 == 1)):
print("玩家1獲勝!")
elif ((player1 == 1 and player2 == 3)
or (player1 == 2 and player2 == 1)
or (player1 == 3 and player2 == 2)):
print("玩家2獲勝!")
else:
print("平局!")
總結
以上是生活随笔為你收集整理的python初学火车座位判断_Python学习第三课 判断(if)语句的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: sql 取重复key中的第一条_SQL每
- 下一篇: python处理excel奖金_60万行