[Python基礎]流程控制If Eles

2024/01/14閱讀時間約 4 分鐘

在人生中總是會遇到許多選擇,做了不同的選擇產生的結果也會不一樣,大多時候都是在為了要吃什麼在抉擇,小孩才做選擇大人全部都要,全部都要何嘗也不是一個選擇。

在Python程式語言中也有選擇的語法就是If Else,如果是就做什麼不是就做什麼,有別於其他程式語言,他不一定要有else,可以只有If就好,條件到在做。

基本語法如下:

在Python 中的縮排(indentation)非常重要,因為它們被用來指示程式碼塊的開始結束。在 if-else 結構中,縮排是必需的

縮排通常使用空格或制表符(Tab)實現,一個縮排為四個空格

其中的條件可以套用邏輯運算子的概念,True執行,False不執行往下

[Python基礎]基本語法_邏輯運算子

if 條件:
# 如果條件為真,執行這裡的程式碼()
else:
# 如果條件為假,執行這裡的程式碼()
if else流程圖

if else流程圖


程式範例

如果縮排不正確,將會引發 IndentationError,這是因為 Python 使用縮排來區分不同的程式碼塊,缺少或混合使用縮排會導致程式碼無法正確解釋。

x = 10
if x > 5:
print("x 大於 5")
else:
print("x 不大於 5")

那如果是請別人幫忙買吃的,第一喜歡的賣完就買第二喜歡的以此類推呢?可不可以讓選擇也有優先順序?

是有的,就是else if的概念,但在python的語法下就變成了elif的語法。

就如以下範例,90分以上就優秀,排好順序依序判斷。

score = 75

if score >= 90:
print("優秀")
elif score >= 80:
print("很好")
elif score >= 70:
print("良好")
elif score >= 60:
print("及格")
else:
print("不及格")

用去商店買東西舉例,想買香蕉,若沒有就買蘋果,沒有就回家。

程式碼實現就會如下,先建立商品名單,在用if條件式去建構自己的需求,如果有香蕉就買,沒有就往下看有沒有蘋果,有就買,沒有就回家

其他用法

其他用法

那你又會想,那如果有香蕉,但他價格很貴怎麼辦還要買嗎?太貴買回去會被念,我們就要在設立一個條件,小於多少價格500在買,用字典建立一個價格表,然後先檢查商店有沒有香蕉,有在判斷是否小於500。利用巢狀結構的概念完成。

超過多少就不買

超過多少就不買

那如果是什麼都沒買回家,會不會也被念,那我們在加一些判斷香蕉太貴就買蘋果,簡單不就一樣的結構複製貼上,在改個數字而已嗎?

疑,奇怪怎麼什麼都沒買回家了?原來是每次判斷到有banana就不會在往下走了,不能這樣複製貼上改,要換個方式

執行完則會跳出

執行完則會跳出

這時候程式碼改成這樣,利用邏輯運算子and的用法結合兩個邏輯判斷,即可滿足此功能,不會在空手回家被念了。

先判斷是否有香蕉,在用and 結合另外一個邏輯判斷(先從字典取出香蕉的價格)是否小於500

Store = ['banana', 'apple', 'hamburger', 'meat', 'Fish']
Store_price = {'banana': 1000, 'apple': 500, 'hamburger': 300, 'meat': 700, 'Fish': 500}

if 'banana' in Store and Store_price.get('banana') < 500:
print('Buy banana')
elif 'apple' in Store and Store_price.get('apple') < 600:
print('Buy apple')
else:
print('Go HOME')
邏輯判斷

邏輯判斷

善用條件結合邏輯判斷,讓自己的程式碼更有智慧吧,但也要注意判斷的邏輯是否與想要的功能相符喔~

其他流程控制內容:

[Python基礎]流程控制for迴圈

[Python基礎]流程控制while迴圈,break ,continue

喜歡的話,愛心追蹤支持作者,謝謝大家










49會員
87內容數
Python程式設計師,不是在學習就是在學習的路上
留言0
查看全部
發表第一個留言支持創作者!