跳轉到內容

Python 魔法書/06.If

來自華夏公益教科書

目錄 | 上一篇 | 下一篇



if 語句

[編輯 | 編輯原始碼]

您已經遇到過在英語中大量使用的詞語if。如果您從頭開始閱讀本書,您可能已經遇到過這個短語。if在 Python 中的作用與英語中的 (if) 一樣。

例如

如果我完成了高中,我就去上大學。

我們有英語中使用的If,之後是一個條件(帶下劃線)。這個條件將決定學習者是否會上大學。

假設學習者無法完成高中。學習者將不會上大學。想象一下沒有if的句子,句子將毫無意義。這就是if在 Python 中的用處。

大多數時間都花在建立條件上,這將涉及邏輯表示式和一些運算子。

if 語句定義

if condition:
   statement1
   statement2
   statement3
   e.t.c

語句是在滿足條件時執行的那些東西。冒號(:) 用於縮排目的(記住 Python 是縮排語言)。

就像我說的,條件是使用邏輯(就像數學中的機率)和表示式(用於數學中比較 LHS 和 RHS)建立的。即使您從未上過數學課,您仍然會發現學習它們很容易。

表示式

[編輯 | 編輯原始碼]

表示式用於比較兩件事。也許比較兩個變數、數字或 Python 中的任何東西。它們的輸出將是 True 或 False。如果輸出為 True,則將執行條件。

一些使用的運算子是。

== - check if Left Hand Side(LHS)
        is equal to RHS.
=!  - check if LHS in not equak to RHS
<   - checks if LHS is less than RHS
>   - do oposite of (<)
<= - check if LHS is less than or equal to 
       RHS
>= - opposes ( <= )

示例 01

a = 3
b = 3

if a == b:
   Print('correct')
a == b

輸出

correct
True

讓我們更改 a 的值

a = 10
b = 3

if a == b:
   Print('correct')

輸出

.

那麼為什麼正確沒有列印在螢幕上。請記住,條件沒有完成。因為 a 的值與 b 的值不同。但是,如果您希望在條件未完成時執行某些操作怎麼辦?

此時,我們需要使用另一個稱為else的語句。

示例 02

a = 10
b = 3

if a == b:
   Print('correct')
else:
   print('wrong')

輸出

wrong

else 下面的程式碼將僅在 if 語句中的條件未完成時執行。如果我想使用多個 if 語句來增加程式碼執行的機會怎麼辦?


示例 03

a = 5
b = 12

if a == b:
   Print('Equal')

elif a < b:
   print('a less than b')

elif a > b:
   print('a greater than b')

else:
   print('none correct')

輸出

a less than b

您不僅限於執行簡單的操作,例如在螢幕上列印文字。您可以定義函式、建立變數、解決涉及數字的問題或進行 Python 可以做的任何事情。

邏輯是包含或排除正在發生或將要發生的事件的方式。事件可以是發生的任何事情,例如死亡、贏得比賽或新增數字。

一些邏輯運算子是

A and B - include both event
A or B   - include either A or B
not A    - A not included
not B    - B not include

我知道你不會明白上面這些東西的含義。讓我們使用 True 和 False 來代替 A 和 B。

示例 04(and)

A = True
B= False

A and B
B and B
A and A

輸出

False
False
True

第一行檢查 A 和 B 是否為真。如果它們都為真。它返回真,否則返回假。我們的輸出為假,因為 A 和 B 都不為真。

第二行檢查 B 和 B 是否為真。如果它們為真,它返回真,否則返回假。輸出為假,因為 B 和 B 都為假。

第三行檢查 A 和 A 是否為真。如果 A 和 A 都為真,則返回真,否則如果其中一個或兩個為假,則返回假。輸出為真,因為 A 和 A 都為真。

示例 05(or)

A = True
B= False

A or B
B or B
A or A

輸出

True
False
True

or中,如果其中一個輸出(A 或 B)為真,則返回真。研究下面的示例以獲取更多資訊。

示例 06(not)

A = True
B= False

not B
not (A and B)
not A

輸出

True
True
False

not將真變為假,將假變為真。檢視第 1 行和第 2 行以觀察這一點。第 2 行有點難,因為notand的組合。首先,您需要獲得A and B的輸出,即。然後透過將輸出()更改為其相反()來應用<n>not</n>。

為了建立一個強大的條件,您需要將邏輯閘和表示式組合成一個工作工具。我認為您已經意識到,表示式和邏輯的輸出都是真或假。我們可以使用表示式而不是將 A 和 B 傳遞到邏輯中。

示例 07

Num= [23, 'kevin, 45]
a='john'
if kevin in Num and a == 'marry':
   print('logic')
else:
   print('stop guessing')

輸出

stop guessing

哦,為什麼它運行了 else 語句,而 kevin 在 Num 列表中?請注意and在條件中使用。這意味著如果 kevin 在 Num 列表中,並且如果 a 等於 marry,那麼條件將滿足,因為條件的輸出將為真。(記住條件應該返回真或假)。如果條件的輸出為假,則不滿足條件,導致if下面的語句不執行。

習慣邏輯和表示式,它們在建立圖形使用者介面(有時稱為 gooey (GUI))時將非常有用。

目錄 | 上一篇 | 下一篇


華夏公益教科書