python運算子優先順序總結

2021-10-17 04:16:16 字數 3871 閱讀 8989

operator

description

lambda

lambda expression

ifelse

conditional expression

or

boolean or

and

boolean and

notxboolean not

in,not in,is,is not,<,<=,>,>=,!=,==comparisons, including membership tests and identity tests

|bitwise or

^bitwise xor

&bitwise and

<<,>>shifts

+,-addition and subtraction

*,@,/,//,%multiplication, matrix multiplication, division, floor division, remainder 5

+x,-x,~xpositive, negative, bitwise not

**exponentiation 6

awaitxawait expression

x[index],x[index:index],x(arguments...),x.attributesubscription, slicing, call, attribute reference

(expressions...),[expressions...],,binding or tuple display, list display, dictionary display, set display

運算子描述**

指數 (最高優先順序)

~ + -

按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@)

* / % //

乘,除,取模和取整除

+ -加法減法

>> <<

右移,左移運算子

&位 『and』

^ |位運算子

<= < > >=

比較運算子

<> == !=

等於運算子

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

賦值運算子

is is not

身份運算子

in not in

成員運算子

not and or

邏輯運算子

運算子邏輯表示式

描述例項

andx and y

布林"與" - 如果 x 為 false,x and y 返回 false,否則它返回 y 的計算值。

(a and b) 返回 20。

orx or y

布林"或" - 如果 x 是 true,它返回 x 的值,否則它返回 y 的計算值。

(a or b) 返回 10。

notnot x

布林"非" - 如果 x 為 true,返回 false 。如果 x 為 false,它返回 true。

not(a and b) 返回 false

a =

6>

4and

1<1or

2>

1b =

3>

1and

0print

('a ==>'

, a)

print

('b ==>'

, b)

# ------------ 結果 ------------- #

a ==

>

true

b ==

>

0

a =

5b =

2c = a +

1if b ==

2else a

d = a +

1if b !=

2else a

print

('c ==>'

, c)

print

('d ==>'

, d)

# ------------ 結果 ------------- #

c ==

>

6d ==

>

5

結論:

1. 字串none比時間和日期字串都要大

2. 日期字串之間可以直接比較大小

3. 時間字串之間可以直接比較大小

# 1.時間

deftest

(param):if

'09:00:00'

< param <

'18:00:00'

:print

(param,

'ok'

)else

:print

(param,

'no'

)a =

'08:59:59'

b ='13:00:00'

c ='18:00:01'

test(a)

test(b)

test(c)

# ------------ 結果 ------------- #08:

59:59 no13:

00:00 ok18:

00:01 no

# 2.日期

a ='2020-11-17'

b ='2020-11-16'

c = a if a and a < b else b

print

(c)# ------------ 結果 ------------- #

2020-11

-16# 3.none與時間和比較(字串none比時間和日期字串都要大)

a ='none'

b ='16:23:16'

c ='2021-01-22'

d ='2020-06-23'

print

('none-b'

,max

(a, b)

)print

('none-c'

,max

(a, c)

)print

('none-d'

,max

(a, d)

)# ------------ 結果 ------------- #

none

-b none

none

-c none

none

-d none

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

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

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

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

運算子優先順序 PHP運算子優先順序

php運算子優先順序 結合方向 運算子附加資訊 非結合clone new clone 和 new左 array 非結合 遞增 遞減運算子 非結合 int float string array object bool 型別非結合 instanceof 型別右結合 邏輯操作符 左 算術運算子 左 算術運...