Python3 條件控制


Python條件語句是透過一條或多條語句的執行結果(True或False)來決定執行的程式碼區塊。

可以透過下圖來簡單了解條件語句的執行過程:

1036.jpg


#if 語句

Python中if語句的一般形式如下所示:

if condition_1:
    statement_block_1
elif condition_2:
    statement_block_2
else:
    statement_block_3
  • 如果"condition_1" 為True 將執行"statement_block_1" 區塊語句

  • 如果"condition_1" 為False ,將判斷"condition_2"

  • 如果"condition_2" 為True 將執行"statement_block_2" 區塊語句

  • #如果"condition_2" 為False,將執行"statement_block_3"區塊語句

Python 中用elif 取代了else if,所以if語句的關鍵字是:if – elif – else

注意:

  • 1、每個條件後面要使用冒號(:),表示接下來是滿足條件後要執行的語句塊。

  • 2、使用縮排來分割語句區塊,相同縮排數的語句在一起組成一個語句區塊。

  • 3、在Python中沒有switch – case語句。

實例

以下是一個簡單的if 實例:

#!/usr/bin/python3

var1 = 100
if var1:
   print ("1 - if 表达式条件为 true")
   print (var1)

var2 = 0
if var2:
   print ("2 - if 表达式条件为 true")
   print (var2)
print ("Good bye!")

執行上述程式碼,輸出結果為:

1 - if 表达式条件为 true
100
Good bye!

從結果可以看到由於變數var2 為0,所以對應的if 內的語句沒有執行。

以下實例示範了狗的年齡計算判斷:

#!/usr/bin/python3

age = int(input("请输入你家狗狗的年龄: "))
print("")
if age < 0:
	print("你是在逗我吧!")
elif age == 1:
	print("相当于 14 岁的人。")
elif age == 2:
	print("相当于 22 岁的人。")
elif age > 2:
	human = 22 + (age -2)*5
	print("对应人类年龄: ", human)

### 退出提示
input('点击 enter 键退出')

將上述腳本保存在dog.py檔案中,並執行該腳本:

$ python3 dog.py 
请输入你家狗狗的年龄: 1

相当于 14 岁的人。
点击 enter 键退出

以下為if中常用的操作運算子:

小於#小於或等於大於大於或等於等於,比較物件是否相等
運算子描述
##<
<=
>
>=
==
!=
!=


不等於

實例

#!/usr/bin/python3

# 程序演示了 == 操作符
# 使用数字
print(5 == 6)
# 使用变量
x = 5
y = 8
print(x == y)

以上實例輸出結果:

False
False
high_low.py檔案示範了數字的比較運算: ###
#!/usr/bin/python3 

# 该实例演示了数字猜谜游戏
number = 7
guess = -1
print("数字猜谜游戏!")
while guess != number:
    guess = int(input("请输入你猜的数字:"))

    if guess == number:
        print("恭喜,你猜对了!")
    elif guess < number:
        print("猜的数字小了...")
    elif guess > number:
        print("猜的数字大了...")
###執行以上腳本,實例輸出結果如下:###
$ python3 high_low.py 
数字猜谜游戏!
请输入你猜的数字:1
猜的数字小了...
请输入你猜的数字:9
猜的数字大了...
请输入你猜的数字:7
恭喜,你猜对了!
######if 巢狀######在巢狀if 語句中,可以把if...elif. ..else 結構放在另一個if...elif...else 結構中。 ###
if 表达式1:
    语句
    if 表达式2:
        语句
    elif 表达式3:
        语句
    else
        语句
elif 表达式4:
    语句
else:
    语句
###實例###
# !/usr/bin/python3

num=int(input("输入一个数字:"))
if num%2==0:
    if num%3==0:
        print ("你输入的数字可以整除 2 和 3")
    else:
        print ("你输入的数字可以整除 2,但不能整除 3")
else:
    if num%3==0:
        print ("你输入的数字可以整除 3,但不能整除 2")
    else:
        print  ("你输入的数字不能整除 2 和 3")
###將上述程式儲存到 test_if.py  檔案中,執行後輸出結果為:###
$ python3 test.py 
输入一个数字:6
你输入的数字可以整除 2 和 3
###