當前位置:首頁 » 編程語言 » pythonif與或非

pythonif與或非

發布時間: 2023-07-08 05:56:32

python語法教程 條件語句

Python語法教程:條件語句
定義
條件語句就是使用if、elif、else等關鍵詞來判斷某些條件的執行結果(True或者False)來決定執行哪些代碼塊的語句,我們用下面的圖來說明:

在Python中,使用非0或者非空(null)的值作為True的條件判斷,使用0或者空(null)的值作為False的條件判斷;
語法
條件語句的基本寫法如下:
當「判斷條件」成立時,將執行隨後的「執行語句」,「執行語句」是可以有多行的,使用縮進來區分是屬於同一代碼塊的范圍;
elif不是必須要填寫的關鍵詞,當有多個判斷條件存在時,它才將會出現;
舉一個實際的例子:

執行的結果是 15;
要值得注意的是,在Python中,並沒有像C++等編程語言中的「switch/case」關鍵詞,在這里,我們使用上面提到的elif關鍵詞來代替「switch/case」,但是當條件比較多的時候,代碼量太大,並不好維護,此時可以使用字典映射的方法來實現,舉個例子:

當執行num2Str函數時,如果參數是0,則輸出「zero」,如果參數是1,則輸出「one」,如果參數是2,則輸出「two」,如果參數是3,則輸出「three」,除此之外,都輸出「nothing」;
多條件判斷
多條件判斷語句使用關鍵詞「and」或者「or」來連接若干個條件語句進行判斷,「and」的意思是「並且」,「or」的意思是「或者」,也就是說,當用and關鍵詞時,要滿足所有的條件為True,才會執行判斷語句後面的代碼塊,而用or關鍵詞時,只要滿足其中之一為True,就能執行判斷語句後面的代碼塊了,例如:

在這里說一下執行的優先順序,「()」里的優先順序最高,其次是>(大於)、<(小於)等判斷符號,而 and 和 or 的優先順序比判斷符號還要低,也就是說,>(大於)、<(小於)在沒有括弧的情況下,要先於and和or來執行判斷;

② python裡面if…andnot什麼意思

一、not、and、or的含義以及優先順序對象返回結果優先順序not xif x is false,then True,else False1

x and yif x is false,then x,else y2

x or yif x is false,then y,else x3

含義:not是 「非」 ;and是 「與」 ;or是 「或」 (可以用數學去理解)

1、not True = False 或者 not False = True (非真就是假,非假即真)

2、and是一假則假,兩真為真,兩假則假

3、or是一真即真,兩假即假,兩真則真

優先順序是 not > and > or

代碼如下(示例):

x=1 #將x賦值為1

y=0 #將y賦值為0

z=0 #將z賦值為0

print(x or y and not z)

'''

輸出結果為

1

'''

小提示: 我們知道在編程語言中「非0即是True」,也就是「0為False,1為True」由於優先順序是not>and>or,所以首先執行not z(也就是not 0),

即 not 0 = not False =True =1

下一步是輪到了and,那麼 y and 1(已知y=0)即 0 and 1,也就是

False and True (假與真),我們剛剛談過and,一假即假,故

y and 1 = 0 and 1 = False = 0

最後一步按優先順序是輪到了or,即 x or 0(已知x=1),

即 1 or 0 =True or Flase =True = 1(or即「或」中,一真即真)

所以輸出結果為 1總結: 代碼運算過程為: (用數學符號表示優先順序)

{ x or [ y and (not z) ] }

二、not、and、or的使用方法

1.not

if x is false,then True,else False

如果x為False則not x 為True,否則為False

(如果x是假的,則「非假」為真,否則x是真的,則非真為假)

在編程中是 布爾運算,即返回值是True 或者 False

代碼如下(示例):

print(not 0,not 1,not True,not False)

'''

輸出結果為:

True False False True

'''

2.and

and運算後的返回結果:

從左到右計算表達式,若所有的都為真,則返回最後一個值,若存在假,返回第一個值。

簡單理解:

and的目的是找到並返回第一個False(假)或最後一個True(真) (從左往右找)(一假即假,兩真即真)

代碼如下(示例):

1、找到並返回第一個False(假)

print(1 and 2 and 0 and 4 and False)

'''

輸出結果為:

0

'''

因為and是找到第一個False(假),我們知道在計算機中,

False即為0,所以輸出結果是 0

2、找到並返回最後一個True(真)

print(1 and 2 and True and 4 and 6)

print(2 and 5 and True and 7 and True)

'''

輸出結果為:

6

True

'''

因為 1,2,True,4,6 都不是0,我們知道 非零True,所以都是 真的,那麼輸出最後一個真值,所以輸出結果為 6

因為 2,5,True,7,True 都不是0,都是真的,同理輸出最後一個真值,所以輸出結果為 True

3.or

or運算後的返回結果:

從左到右計算表達式,只要遇到真值就返回那個真值,如果表達式結束依舊沒有遇到真值,就返回最後一個假值。

③ 如何在PYTHON中寫「與」和「或」的選擇條件,就像在C++中的『&&』 與『||』一樣

與 = and
或 = or

ex:
>>> a=1
>>> b=2
>>> if (a>0 and b>0):
... print 'a>0, b>0'
...
a>0, b>0

拓展資料:

  1. Python (英國發音:/ˈpaɪθən/ 美國發音:/ˈpaɪθɑːn/), 是一種面向對象的解釋型計算機程序設計語言,由荷蘭人Guido van Rossum於1989年發明。

  2. 第一個公開發行版發行於1991年。Python是純粹的自由軟體, 源代碼和解釋器CPython遵循 GPL(GNU General Public License)協議。Python語法簡潔清晰,特色之一是強制用空白符(white space)作為語句縮進。

  3. Python具有豐富和強大的庫。它常被昵稱為膠水語言,能夠把用其他語言製作的各種模塊(尤其是C/C++)很輕松地聯結在一起。常見的一種應用情形是,使用Python快速生成程序的原型(有時甚至是程序的最終界面)。

  4. 然後對其中有特別要求的部分,用更合適的語言改寫,比如3D游戲中的圖形渲染模塊,性能要求特別高,就可以用C/C++重寫,而後封裝為Python可以調用的擴展類庫。需要注意的是在您使用擴展類庫時可能需要考慮平台問題,某些可能不提供跨平台的實現。

  5. 7月20日,IEEE發布2017年編程語言排行榜:Python高居首位 。

  6. 2018年3月,該語言作者在郵件列表上宣布 Python 2.7將於2020年1月1日終止支持。用戶如果想要在這個日期之後繼續得到與Python 2.7有關的支持,則需要付費給商業供應商。

④ python中循環語句

1、if語句

Python中的if子句由三部分組成:關鍵字本身、用於判斷結果真假的條件表達式以及當表達式為真或者非零時執行的代碼塊。if 語句的語法如下:
if expression:
expr_true_suite
if 語句的expr_true_suite代碼塊只有在條件表達式的結果的布爾值為真時才執行,否則將繼續執行緊跟在該代碼塊後面的語句。
(1)多重條件表達式
單個if語句可以通過使用布爾操作符and、or和not,實現多重判斷條件或是否定判斷條件。
(2)單一語句的代碼塊
如果一個復合語句(例如if子句、while或for循環)的代碼塊僅僅包含一行代碼,那麼它可以和前面的語句寫在同一行上。如if make_hard_: send_data_to_printer(),這樣的單行語句是合法的, 盡管它可能方便,但這樣會使得代碼更難閱讀, 所以推薦將這行代碼移到下一行並合理地縮進。另外一個原因就是如果你需要添加新的代碼, 你還是得把它移到下一行。
2、else語句
Python提供了與if語句搭配使用的else語句,如果if語句的條件表達式的結果布爾值為假,那麼程序將執行 else 語句後的代碼。其語法如下:
if expression:
expr_true_suite
else:
expr_false_suite
在C語言中,不會在條件語句范圍外發現else語句, 但Python不同,可以在while和for循環中使用else語句,在循環中使用時,else子句只在循環完成後執行,也就是說break語句也會跳過else塊。
例:顯示出10到20中的數字的最大約數

在CODE上查看代碼片派生到我的代碼片

#!/usr/bin/env python

def showMaxFactor(num):
count = num / 2
while count > 1:
if (num % count == 0):
print 'largest factor of %d is %d' % (num, count)
break
count = count - 1
else:
pr

⑤ python,if語句用or作條件判斷不執行else

if a == 1 or 2
or的前面是False,但是2這個條件總是Ture,所以總是輸出的是1.如果你要達到排除2的效果應該是寫成if a == 1 or a == 2 或者 是if a in [1,2]

⑥ python的if語句用法

Python條件語句是通過一條或多條語句的執行結果(True或者False)來決定執行的代碼塊。

Python程序語言指定任何非0和非空(null)值為true,0 或者 null為false。

Python 編程中 if 語句用於控製程序的執行。其中"判斷條件"成立時(非零),則執行後面的語句,而執行內容可以多行,以縮進來區分表示同一范圍。

else 為可選語句,當需要在條件不成立時執行內容則可以執行相關語句。

(1)簡單的if語句:

在第1行中,可包含任何條件測試,而在緊跟在測試後面的縮進代碼塊中,可執行任何操作。如果條件測試的結果為True,Python就會執行緊跟在if語句後面的代碼;否則Python將忽略這些代碼。

(2)if-else語句

經常需要在條件測試通過了時執行一個操作,並在沒有通過時執行另一個操作;在這種情況下,可使用Python提供的if-else語句。if-else語句塊類似於簡單的if語句,但其中的else語句,讓你能夠指定條件測試未通過時要執行的操作。

(3)if-elif-else語句

經常需要檢查超過兩個的情形,為此可使用Python提供的if-elif-else結構。Python只執行if-elif-else結構中的一個代碼塊,它依次檢查每個條件測試,直到遇到通過了的條件測試。測試通過後,Python將執行緊跟在它後面的代碼,並跳過餘下的測試。

條件測試:

(1)概念:

每條if語句的核心都是一個值為True或False的表達式,這種表達式被稱為條件測試。Python根據條件測試的值為True還是False來決定是否執行if語句中的代碼。如果條件測試的值為True,Python就執行緊跟在if語句後面的代碼;如果為False,Python就忽略這些代碼。

(2)檢查是否相等:

通常情況下會用 「==」的左值和右值是否相等來判斷程序是否繼續進行,會區分大小寫也會用「!=」 來表示不相等繼續進行,相等則忽略。

(3)檢查多個條件:

and: 要檢查是否兩個條件都為True,可使用關鍵字and將兩個條件測試合而為一;如果每個測試都通過了,整個表達式就為True;如果至少有一個測試沒有通過,整個表達式就為False。

or: 關鍵字or也能夠讓你檢查多個條件,但只要至少有一個條件滿足,就能通過整個測試。僅當兩個測試都沒有通過時,使用or的表達式才為False。

(4)檢查特定值是否包含在列表內:

要判斷特定的值是否已包含在列表中,可使用關鍵字in。

(5)檢查特定值是否不包含在列表內:

確定特定的值未包含在列表中很重要,可使用關鍵字not in。

(6)布爾表達式:

布爾表達式的結果要麼為True,要麼為False。

⑦ python-邏輯運算:not\and\or和布爾值:True\False

這東西在每一個語言都有,and or not 對應與、或、非三種邏輯運算;True和False是bool值,即真和假。
邏輯運算和布爾值經常用於if判斷語句、循環語句的條件語句。
首先作為控制條件應該是一個布爾值,即真和假——True和false。
python的內置類——布爾類,只有兩個實例:True和false。對於一般數字而言,0是False,非0是True;對於序列和容器類型,如列表、字典、字元串等,空為False,非空為True。
所以就有了這樣的用法:

輸出:1 為True

輸出: 0 為 False

輸出:a = '字元串'

這了可以看出一個實例本身可以作為控制條件,這是因為,解釋器會先把這個實例轉換為bool類型,然後根據這個bool類型執行程序。即bool(a) = True、bool(b) = False。
但是只用這樣的方式控製程序顯然不夠,比如我希望a為空,b為非空的時候,我輸出「我天下第一」,這怎麼辦?
如果不用not and or 就會寫成這樣:

輸出:我天下第一
可以把a 看成False,b看成True。
從這里我們可以看到,我們用了兩層if--else語句來判斷a為空,b為非空的情況,那麼我用邏輯運算呢?

輸出:我天下第一
一樣的:可以把a 看成False,b看成True。那麼not a and b的意思就是:not False and True
這時候就是邏輯運算符的優先順序的問題,這可以借鑒C語言的那本書《C程序設計》第五版的第92頁

!非
算數運算符
關系運算符
&& 和 ||
賦值運算符

運算優先順序從上到下,越來越低。
這是C語言里的,在python里就是:

not -------------->高
and 和 or ---------->低

所以我們先算not
於是 not False and True 就成所以了True and True這就很清楚了結果為True,所以「我天下第一」。
所以我們就可以總結出:
1.先將實例變為布爾值
2.在計算所有的not
3.根據語言特性,從左到右或者從右到左計算邏輯運算結果。
當然在python中是從左到右。

and 和 or 運算具有短路保護!什麼意思呢?看一個栗子

1 or a
or的左邊是1也就是True,根據or的運演算法則,只要有一個真則為真,所以不管a是真還是假,結果都是真。

0 and a
and 左邊為0,為False,同樣,and只要有一個為假則為假,所以不管a是真還是假,結果都是假。
所以and 和 or 的結果可以根據第一個操作數的值來確定,那麼他就不會對第二個操作數進行運算。
這個功能用起來要很小心,不然很可能會出現想不到的結果。

這里會輸出什麼呢?
輸出:我天下第一

因為x是True,無論y and z 的結果是什麼,這個語句的結果都是True,這就是短路保護,當然也有的人說惰性計算。

我覺得迭代器、生成器那個才叫惰性計算。

⑧ python中的if not 怎麼用

python中的if not的用法說明如下:

1、if的語法為:if 條件為真:執行語句,而not是取反的意思。

2、從上面的解釋可理解為:if not 條件為真:執行語句<==>if 條件不為真:執行語句。

3、舉例:if n>3:print "True",假如n=3,就列印「True」。如果加上not,即為if not n>3:print 「True」,就有:n<=3,才會列印「True"。

(8)pythonif與或非擴展閱讀:

python中的「if not 1」:

if條件語句後面需要跟隨bool類型的數據,即True或者False。然而,如果不是bool類型的數據,可以將其轉換成bool類型的數據,轉換的過程是隱式的。

在Python中,None、空列表[]、空字典{}、空元組()、0等一系列代表空和無的對象會被轉換成False。除此之外的其它對象都會被轉化成True。

在命令「if not 1」中,1便會轉換為bool類型的True。not是邏輯運算符非,not 1則恆為False。因此if語句if not 1之下的語句,永遠不會執行。

⑨ 請問python中的if語句都有哪些形式

Python中選擇語句主要有3種形式,分別為if語句、if…else語句和if…elif…else多分支語句。

if…elif…else語句

但有時候我們需要很多判斷,並不是非黑即白,這時用戶就需要從多個選項中選擇一個。在開發程序時,如果遇到多選一的情況。

則可以使用if…elif…else語句,該語句是一個多分支選擇語句,通常表現為「如果滿足某種條件,進行某種處理,否則,如果滿足另一種條件,則執行另一種處理……」。

if注意:


1.比較表達式無論簡單還是復雜,結果必須為Boolean類型。


2.if語句控制的語句體只有如果只有一條語句,大括弧可以省略;如果是多條語句則不能省略,建議永遠不要省略。


如:if(比較表達式)


語句


3.一般來說:有左大括弧就沒有分號,有分號就沒有左大括弧。


如:if(比較表達式){........}, if(比較表達式)。

⑩ python與或非什麼區別

Python邏輯運算符
Python中的邏輯運算,與,或,非,分別對應關鍵字and,or,not。邏輯與表示兩者都為真,返回真,反之為假;邏輯或表示一者為假,則為假;邏輯非表示相反的概念。
Python語言支持邏輯運算符,以下假設變數 a 為 10, b為 20:
Python學習網- 專業的python自學、交流公益平台!

熱點內容
芝麻雲伺服器分布圖 發布:2025-02-09 06:12:53 瀏覽:429
oracle同義詞存儲過程 發布:2025-02-09 06:00:59 瀏覽:156
quartz資料庫配置 發布:2025-02-09 05:58:07 瀏覽:114
彎矩圖編程 發布:2025-02-09 05:58:06 瀏覽:186
多個ip段怎麼配置網關 發布:2025-02-09 05:57:23 瀏覽:414
體檢中心的無線網密碼多少 發布:2025-02-09 05:40:15 瀏覽:516
腳本語言是編譯還是解釋 發布:2025-02-09 05:30:24 瀏覽:644
天墓密碼結局是什麼 發布:2025-02-09 05:25:52 瀏覽:438
如何找回網際網路帳號的密碼 發布:2025-02-09 05:20:05 瀏覽:374
樹莓派源碼 發布:2025-02-09 05:07:00 瀏覽:652