and 和 or 是python的兩個(gè)邏輯運(yùn)算符,可以使用and , or來(lái)進(jìn)行多個(gè)條件內(nèi)容的判斷。下面通過(guò)代碼簡(jiǎn)單說(shuō)明下and or的用法:
1. or:當(dāng)有一個(gè)條件為真時(shí),該條件即為真。邏輯圖如下:
測(cè)試代碼如下:
1
2
3
4
5
|
a = raw_input ( 'please input somting:' ) if a = = 'a' or a = = 'b' : print 'it is a or b' else : print 'it is not a or b' |
執(zhí)行代碼,輸入a,b,ac,結(jié)果如下:
please input somting:a
it is a or bplease input somting:b
it is a or bplease input somting:ac
it is not a or b
通過(guò)這個(gè)例子,我們可以看出,當(dāng)輸入為a或者b時(shí),滿足 a==‘a'或者a=='b'的條件,即滿足if條件。
2.or:當(dāng)所有條件為真時(shí),該條件即為真。邏輯圖如下:
測(cè)試代碼如下:
1
2
3
4
5
|
a = raw_input ( 'please input somting:' ) if a! = 'a' and a! = 'b' : print 'it is not a or b' else : print 'it is a or b' |
執(zhí)行代碼,輸入a,b,ac,結(jié)果如下:
please input somting:a
it is a or bplease input somting:b
it is a or bplease input somting:ac
it is not a or b
通過(guò)這個(gè)例子,我們可以看出,只有當(dāng)條件同時(shí)滿足a!='a' 和 a!='b'時(shí),才會(huì)執(zhí)行 print 'it is not a or b'
3.為了深入了解and or的用法,考慮到當(dāng)a='a' or 'b'或者a='a' and 'b'時(shí),會(huì)是怎么樣子的呢。讓我們先測(cè)試or的用法看下,測(cè)試代碼如下:
1
2
3
4
5
|
a = raw_input ( 'please input somting:' ) if a = = 'a' or 'b' : print 'it is a or b' else : print 'it is not a or b' |
我們輸入a,b,q,結(jié)果如下:
please input somting:a
it is a or b
please input somting:b
it is a or bplease input somting:q
it is a or b
我們發(fā)現(xiàn),無(wú)論輸入什么,都滿足a==‘a' or 'b'這個(gè)條件,這是為什么呢?這時(shí),我們看下or的運(yùn)算原理:or是從左到右計(jì)算表達(dá)式,返回第一個(gè)為真的值。由于我們并沒有將比較值‘a' or 'b'用括號(hào)或者雙引號(hào)集合起來(lái),所以當(dāng)我們輸入q時(shí),雖然輸入q=='a'這個(gè)條件不成立,當(dāng)時(shí),此時(shí)判斷條件變成了q=='a' or 'b',此時(shí)'b'不會(huì)空,當(dāng)兩個(gè)條件之一有一個(gè)為真,這個(gè)判斷條件就是Ture,所以無(wú)論我們輸入什么,都是為Ture。我們可以稍微修改代碼,驗(yàn)證下or的運(yùn)算原理:or是從左到右計(jì)算表達(dá)式,返回第一個(gè)為真的值。測(cè)試代碼如下:
1
2
3
4
5
|
a = raw_input ( 'please input somting:' ) if a = = ( 'a' or 'b' ): print 'it is a or b' else : print 'it is not a or b' |
我們輸入a和b,結(jié)果如下:
please input somting:a
it is a or b
please input somting:b
it is not a or b
因?yàn)?lsquo;a' or ‘b'這個(gè)條件,‘a'為第一個(gè)真值,所以這個(gè)條件其實(shí)返回的是‘a',所以只有當(dāng)輸入為a,時(shí),才執(zhí)行了 print 'it is a or b' 。
4.and :從左到右計(jì)算表達(dá)式,若所有值均為真,則返回最后一個(gè)值,若存在假,返回第一個(gè)假值。對(duì)于and的測(cè)試,同于or,這邊就不做詳細(xì)介紹了。文章觀點(diǎn)如有什么錯(cuò)誤的地方,歡迎指正。
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持服務(wù)器之家。
原文鏈接:https://www.cnblogs.com/white-small/p/6260740.html