1、Python比較運(yùn)算符(關(guān)系運(yùn)算符)
#== 用來比較兩個(gè)變量的值是否相等,而 is 則用來比對兩個(gè)變量引用的是否是同一個(gè)對象
實(shí)例:
import time
t1= time.gmtime()#gmtime獲取當(dāng)前最新時(shí)間
t2=? time.gmtime()
print(t1 == t2)
print(t1 is t2)
2、Python邏輯運(yùn)算符及其用法
#a and b? ? 當(dāng) a 和 b 兩個(gè)表達(dá)式都為真時(shí),a and b 的結(jié)果才為真,否則為假
#a or b? ? ? 當(dāng) a 和 b 兩個(gè)表達(dá)式都為假時(shí),a or b 的結(jié)果才是假,否則為真。
#? not a? ? 如果 a 為真,那么 not a 的結(jié)果為假;如果 a 為假,那么 not a 的結(jié)果為真。相當(dāng)于對 a 取反。
實(shí)例
age = int(input('請輸入年齡:'))
height = int(input('請輸入身高:'))
if age>=18 and age<=30 and heigeht>=175 and height<=185:
? ? print('恭喜,你符合報(bào)考飛行員的條件')
else:
? ? print('抱歉,你不符合報(bào)考飛行員的條件')
#對于 and 運(yùn)算符,兩邊的值都為真時(shí)最終結(jié)果才為真,但是只要其中有一個(gè)值為假,那么最終結(jié)果就是假,所以 Python 按照下面的#規(guī)則執(zhí)行 and 運(yùn)算:
? 如果左邊表達(dá)式的值為假,那么就不用計(jì)算右邊表達(dá)式的值了,因?yàn)椴还苡疫叡磉_(dá)式的值是什么,都不會(huì)影響最終結(jié)果,最終結(jié)果都是假,此時(shí) and 會(huì)把左邊表達(dá)式的值作為最終結(jié)果。
? 如果左邊表達(dá)式的值為真,那么最終值是不能確定的,and 會(huì)繼續(xù)計(jì)算右邊表達(dá)式的值,并將右邊表達(dá)式的值作為最終結(jié)果。
print("" and "http://c.biancheng.net/python/")
print("1" and "http://c.biancheng.net/python/")
#對于 or 運(yùn)算符,情況是類似的,兩邊的值都為假時(shí)最終結(jié)果才為假,只要其中有一個(gè)值為真,那么最終結(jié)果就是真,所以 Python 按照下面的規(guī)則執(zhí)行 or 運(yùn)算:
? 如果左邊表達(dá)式的值為真,那么就不用計(jì)算右邊表達(dá)式的值了,因?yàn)椴还苡疫叡磉_(dá)式的值是什么,都不會(huì)影響最終結(jié)果,最終結(jié)果都是真,此時(shí) or 會(huì)把左邊表達(dá)式的值作為最終結(jié)果。
? 如果左邊表達(dá)式的值為假,那么最終值是不能確定的,or 會(huì)繼續(xù)計(jì)算右邊表達(dá)式的值,并將右邊表達(dá)式的值作為最終結(jié)果。
print("" or "http://c.biancheng.net/python/")
print("1" or "http://c.biancheng.net/python/")
實(shí)例:
url = "http://c.biancheng.net/cplus/"
print("----False and xxx-----")
print( False and print(url) )
print("----True and xxx-----")
print( True and print(url) )
print("----False or xxx-----")
print( False or print(url) )
print("----True or xxx-----")
print( True or print(url) )
3、Python三目運(yùn)算符(三元運(yùn)算符)
a = 1
b = 2
if a>b:
? ? max=a
else:
? ? max=b
print(max)
aa = a if a>b else b
print(aa)
#使用 if else 實(shí)現(xiàn)三目運(yùn)算符(條件運(yùn)算符)的格式如下:
#exp1 if contion else exp2
#condition 是判斷條件,exp1 和 exp2 是兩個(gè)表達(dá)式。如果 condition 成立(結(jié)果為真),就執(zhí)行 exp1,并把 exp1 #的結(jié)果作為整個(gè)表達(dá)式的結(jié)果;如果 condition 不成立(結(jié)果為假),就執(zhí)行 exp2,并把 exp2 的結(jié)果作為整個(gè)表達(dá)式的結(jié)果。
實(shí)例:
a=0.5
b=2
c=0.3
d=1
aa = a if a>b else ( c if c>d else d )
print(aa)
a = int(input('a:'))
b = int(input('b:'))
print('a>b') if a>b else (print('a<b') if a<b else print('a=b'))
3、Python運(yùn)算符優(yōu)先級(jí)和結(jié)合性一覽表
a=8 >> 4
print(a)
print((4+4) <<3)
print(4+(4 <<3))
#<<n,相當(dāng)于乘以2的n次方,
#>>n,相當(dāng)于除以2的n次方
#2>>2,? 打印出來 為0