8 Python 運算子及其優先順序

2021-10-14 16:37:58 字數 2304 閱讀 3977

1、算數運算子(7)

+,-,*,/,%,**,//
2、比較運算子(6)

==,!==,>,<,>=,<=
3、賦值運算子

=,+=(加法賦值運算子),-=,*=,/=,%=,**=,//=,

:=(海象運算子):可在表示式內部為變數賦值

if

(n:=

len(a)

)>10:

print

(f"list is too long ( elements, excepted<=10 )"

)

通過使用海象運算子,避免len()方法呼叫2次,從而提高了執行效率。

在不使用海象運算子,我們怎麼寫這段**?

if

len(a)

>10:

print

(f"list is too long ( elements, excepted<=10 )"

)# 或

n =len

(a)if n>10:

print

(f"list is too long ( elements, excepted<=10 )"

)

# 復合賦值

a, b =0,

1 a, b = b, a+b

4、位運算子

&(按位與):同為1,結果位為1

|(按位或):只要有乙個為1,結果位為1

^(按位異或):相同為0,相異為1

~(按位取反):把0變成1,把1變成0

<<(左移動運算子):高位丟棄,低位補0

>>(右移動運算子):低位丟棄,高位補0

a =

60# 60 = 0011 1100

b =13# 13 = 0000 1101

c =0 c = a & b # 12 = 0000 1100

d = a | b # 61 = 0011 1101

e = a ^ b # 49 = 0011 0001

f =~ a # ~a = -a-1 = -61

g = a <<

2# 240 = 1111 0000

h = a >>

2# 15 = 0000 1111

5、邏輯運算子

and(布林與)、or(布林或)、not(布林非)
a =

10; b =

20 c = a and b # x and y 若x為false,返回x的計算值,否則返回y的計算值

d = a or b # x or y 若x為true,返回x的計算值,否則返回y的計算值

e =not x # x為true,返回false,否則返回true

6、成員運算子

in 、not in
7、身份運算子

is  判斷兩個識別符號是否引用自同乙個物件。

is not 判斷兩個識別符號是否引用自不同物件

a =[1

,2,3

] b = a

print

(b is a)

# true

print

(b == a)

# true

b = a[:]

print

(b is a)

# false

print

(b == a)

# true

8、運算子的優先順序

運算子描述

**指數(最高優先順序)

~,+,-

按位取反,加號,減號

*,/,%,//

乘,除,取餘,取整除

+,-加法 ,減法

>>,<<

右移左移

&按位與

^, |

按位異或,按位或

>,<,>=,<=

大於小於大於等於小於等於

==,!=

等於和不等於

=,+=,-=,*=,/=,**=,%=,//=

賦值運算子

is,is not

身份運算子

in,not in

成員運算子

and, or,not

邏輯運算子

運算子優先順序 Python 運算子優先順序

python 運算子優先順序 運算子描述 lambda lambda表示式 or布林 或 and布林 與 not x 布林 非 in,not in 成員測試 is,is not 同一性測試 比較 按位或 按位異或 按位與 移位 加法與減法 乘法 除法與取餘 x,x 正負號 x 按位翻轉 指數 x.a...

Java運算子及其優先順序

如有錯誤,敬請指正!注意 在這裡,使用ii表示邏輯或,使用i表示按位或。符號說明 加法 減法 乘法 除法,當運算元都是整數時,表示取整除法 否則,表示除法。例如,15 2等於7,15 2.0等於7.5。取餘。例如,15 7等於1,15.1 7等於1.0999999999999996。自增運算符號,表...

運算子優先順序 C 運算子優先順序

c 運算子優先順序 優先順序運算子 描述方向1 scope resolution 範圍解析 left to right 2 suffix postfix increment and decrement 字首 字尾遞增和遞減 function call 函式呼叫 array subscripting ...