日韩黑丝制服一区视频播放|日韩欧美人妻丝袜视频在线观看|九九影院一级蜜桃|亚洲中文在线导航|青草草视频在线观看|婷婷五月色伊人网站|日本一区二区在线|国产AV一二三四区毛片|正在播放久草视频|亚洲色图精品一区

分享

運(yùn)算符(2)--Python

 靚拖鞋 2021-12-17

1-4、邏輯運(yùn)算符

邏輯運(yùn)算符用于對(duì)bool類型變量進(jìn)行運(yùn)算,其結(jié)果也是bool類型。

以下假設(shè)變量:a=4,b=2:

運(yùn)算符名稱舉例描述說明
not邏輯非not a
a為True時(shí),返回值為False;a為False時(shí),返回值為True。返回值False。
and邏輯與a and ba、b全為True時(shí),返回值為True;否則返回值False返回值True。
or邏輯或a or ba、b全為False時(shí),返回值為False;否則返回值True。返回值True。

舉例:

a = 10

b = 20 

if a and b

print "1 - 變量 a 和 b 都為 true"

else

print "1 - 變量 a 和 b 有一個(gè)不為 true" 

if a or b

print "2 - 變量 a 和 b 都為 true,或其中一個(gè)變量為 true"

else

print "2 - 變量 a 和 b 都不為 true" 

a = 0                                   # 修改變量 a 的值

if a and b

print "3 - 變量 a 和 b 都為 true"

else

print "3 - 變量 a 和 b 有一個(gè)不為 true" 

if a or b

print "4 - 變量 a 和 b 都為 true,或其中一個(gè)變量為 true"

else

print "4 - 變量 a 和 b 都不為 true" 

if not( a and b )

print "5 - 變量 a 和 b 都為 false,或其中一個(gè)變量為 false"

else

print "5 - 變量 a 和 b 都為 true"

運(yùn)行結(jié)果:

1 - 變量 a 和 b 都為 true

2 - 變量 a 和 b 都為 true,或其中一個(gè)變量為 true

3 - 變量 a 和 b 有一個(gè)不為 true

4 - 變量 a 和 b 都為 true,或其中一個(gè)變量為 true

5 - 變量 a 和 b 都為 false,或其中一個(gè)變量為 false

1-5、位運(yùn)算符

位運(yùn)算,是以二進(jìn)位為單位進(jìn)行位運(yùn)算的,操作數(shù)和結(jié)果都是整數(shù)類型的數(shù)據(jù)。

以下假設(shè)變量:a=60,b=13:

運(yùn)算符名稱舉例描述說明
&
按位與運(yùn)算符a & b
參與運(yùn)算的兩個(gè)值,如果兩個(gè)相應(yīng)位都為1,則該位的結(jié)果為1,否則為0。返回值12。
|按位或運(yùn)算符a | b只要對(duì)應(yīng)的2個(gè)二進(jìn)位有一個(gè)為1時(shí),結(jié)果位就為1。返回值61。
^按位異或運(yùn)算符a ^ b當(dāng)兩對(duì)應(yīng)的二進(jìn)位相異時(shí),結(jié)果為1返回值49
~按位取反運(yùn)算符a ~ b對(duì)數(shù)據(jù)的每個(gè)二進(jìn)制位取反,即把1變?yōu)?,把0變?yōu)?。返回值-61。
<<左移動(dòng)運(yùn)算符a << 2運(yùn)算數(shù)的各二進(jìn)位全部左移若干位,由"<<"右邊的數(shù)字指定了移動(dòng)的位數(shù),高位丟棄,低位補(bǔ)0。返回值240。
>>右移動(dòng)運(yùn)算符a >> 2把">>"左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位,">>"右邊的數(shù)字指定了移動(dòng)的位數(shù)。返回值15。

舉例:

a = 60                     # 60 = 0011 1100 

b = 13                     # 13 = 0000 1101 

c = 0 

c = a & b;                # 12 = 0000 1100

print "1 - c 的值為:", c 

c = a | b;                  # 61 = 0011 1101 

print "2 - c 的值為:", c 

c = a ^ b;                # 49 = 0011 0001

print "3 - c 的值為:", c 

c = ~a;                     # -61 = 1100 0011

print "4 - c 的值為:", c 

c = a << 2;               # 240 = 1111 0000

print "5 - c 的值為:", c 

c = a >> 2;               # 15 = 0000 1111

print "6 - c 的值為:", c

運(yùn)行結(jié)果:

1 - c 的值為:12

2 - c 的值為:61

3 - c 的值為:49

4 - c 的值為:-61

5 - c 的值為:240

6 - c 的值為:15

1-6、成員運(yùn)算符

成員運(yùn)算符用于運(yùn)算成員是否在指定序列中,包含有字符串,列表或元組,其結(jié)果為Bool類型。

以下假設(shè)變量:a=4,b=2,list=[2,4,8,16]:

運(yùn)算符名稱舉例描述說明
in
成員內(nèi)a in list如果在指定的序列中找到值時(shí),返回值為True,否則返回值為False。返回值True。
not in成員外
b not in list
如果在指定的序列中沒有找到值時(shí),返回值為True,否則返回值為False。返回值False。

舉例:

a = 10

b = 20

list = [1, 2, 3, 4, 5 ]

if ( a in list )

print "1 - 變量 a 在給定的列表中 list 中"

else

print "1 - 變量 a 不在給定的列表中 list 中" 

if ( b not in list )

print "2 - 變量 b 不在給定的列表中 list 中"

else

print "2 - 變量 b 在給定的列表中 list 中" 

a = 2                              # 修改變量 a 的值

if ( a in list )

print "3 - 變量 a 在給定的列表中 list 中"

else

print "3 - 變量 a 不在給定的列表中 list 中"

運(yùn)行結(jié)果:

1 - 變量 a 不在給定的列表中 list 中

2 - 變量 b 不在給定的列表中 list 中

3 - 變量 a 在給定的列表中 list 中

1-7、身份運(yùn)算符

身份運(yùn)算符用于比較兩個(gè)對(duì)象的存儲(chǔ)單元(內(nèi)存地址),其結(jié)果為Bool類型。

運(yùn)算符名稱舉例描述說明
is
a is b
判斷兩個(gè)標(biāo)識(shí)符是不是引用自一個(gè)對(duì)象。如果引用的是同一個(gè)對(duì)象則返回 True,否則返回 False。
is not
a is not b判斷兩個(gè)標(biāo)識(shí)符是不是引用自不同對(duì)象。如果引用的不是同一個(gè)對(duì)象則返回結(jié)果 True,否則返回 False。

is 用于判斷兩個(gè)變量引用對(duì)象是否為同一個(gè)(同一塊內(nèi)存空間), == 用于判斷引用變量的值是否相等。

舉例:

a = 1

b = -1

c-1

print (id(a)) 

print (id(b))

print (id(c))

print ('{} is {} 的結(jié)果是{}'. format(a,b,a is b))

print ('{} is {} 的結(jié)果是{}'. format(a,c,a is c))

print ('{} is not {} 的結(jié)果是{}'. format(c,b,c is not b))

運(yùn)行結(jié)果:

1804495888

1804495824

1804495824

1 is -1 的結(jié)果是False

1 is -1 的結(jié)果是False

-1 is not -1 的結(jié)果是False

    轉(zhuǎn)藏 分享 獻(xiàn)花(0

    0條評(píng)論

    發(fā)表

    請(qǐng)遵守用戶 評(píng)論公約

    類似文章 更多