python的運算子

2021-10-06 13:24:14 字數 4028 閱讀 4346

運算子用於執行程式**運算,會針對乙個以上運算元專案來進行運算。例如:2+3,其運算元是2和3,而運算子則是「+」

x =1+

2x =

'hello'

+' '

+'world'

x =5-

2# x = 'python' - 'y' # typeerror: unsupported operand type(s) for -: 'str' and 'str'

x =5

-true

x =5*

2x =

'a'*

2# 'aa'

# x = 'a'*'b' # typeerror: can't multiply sequence by non-int of type 'str'

x =6/

2# 除法運算總會返回乙個浮點型別

# x = 6/0 # zerodivisionerror: division by zero

x =7//

3# 2

x =6%

4# 2

x =2**

3x =

25**

0.5# 一種開平方的方式

print

(x)

result =

10>

20# false

result =

30>

20# true

result =

30<

20# false

result =

10<

20# true

result =

10<=

10# true

result =

'2 '

>

'1'# true 按照ascii碼的值的大小

如果出現多個字元那麼我們比較方式是對位比較,如果第一位比較出結果則直接返回結果,如果沒有則比較第二位。

result =

'2'>

'11'

# true

result =

'a'>

'b'# f

result =

'c'<

'd'# t

result =

'ab'

>

'b'# f

result =

'1'<

'1 '

# tresult =

'1'<

'11'

# t

== ⽐較兩個物件的值是否相等,比較的是物件的value

!= ⽐較兩個物件的值是否不相等

result =

'abc'

=='bcd'

# fresult =

'abc'

!='bcd'

# tresult =0==

false

# t

is ⽐較兩個物件是否是同⼀個物件,⽐較的是物件的id

is not ⽐較兩個物件是否不是同⼀個物件,⽐較的是物件的id

result =0is

false

#fresult =0is

notfalse

#tprint

('result = '

,result)

not可以對符號右側的值進⾏⾮運算。對於布林值,⾮運算會對其進⾏取反操作,true變false,false變true。

0 空串 none 還有一些比如表示空性的值會轉換為false 剩下的全是true

a =

1a =

not a

print

(a)# false

a ='hello'

a =not a

print

(a)# false

a =[

]a =

not a

print

(a)# true

r =none

r =not r

print

(r)# true

and可以對符號兩側的值進⾏與運算。 只有在符號兩側的值都為true時,才會返回true,只要有⼀個false就返回false。

與運算是找false的,如果第⼀個值為false,則不再看第⼆個值

result =

true

andtrue

# tresult =

true

andfalse

# fresult =

false

andtrue

# fresult =

false

andfalse

# ftrue

andprint

('hello'

)# hello

false

andprint

('hello'

)# 沒結果

或運算兩個值中只要有⼀個true,就會返回true

result =

true

andtrue

# tresult =

true

andfalse

# tresult =

false

andtrue

# tresult =

false

andfalse

# fprint

('result:'

, result)

當我們對⾮布林值進⾏與或運算時,python會將其當做布林值運算,最終會返回原值。

result =

1and

2# true and true 2

result =

1and

0# 0

result =

0and

2# 0

result =

none

and0

# none

result =1or

2#1result =0or

1#1print

('result:'

,result)

條件運算子在執⾏時,會先對條件表示式進⾏求值判斷

如果判斷結果為true,則執⾏語句1,並返回執⾏結果

如果判斷結果為false,則執⾏語句2,並返回執⾏結果

語法: 語句1 if 條件表示式 else 語句2

# 獲取ab間的最大值

a =10

b =20

print

('a的值比較大'

)if a > b else

print

('b的值比較大'

)# 獲取abc間的最大值

a=10

b=20

c=30

m = a if a > b else b

r = m if m > c else c

print

(r)# 或者

m = a if

(a > b and a > c)

else

(b if b > c else c)

print

(m)

參考官網運算子優先順序**

python 運算子 Python運算子

python語言支援以下型別的運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 1 算術運算子 加號 減號 乘 除 取餘 乘方 整除 1 其中除號 要注意 在python2中,用作整除。解決方法有三 1 兩個相除的數中有乙個為實數。2 ...

python 運算子 python(運算子)

一 運算子 1.算數運算子 1 加 注意 字串與整數之間不能進行相加,需要通過str 或int 進行轉換資料型別 整數與整數相加 1 1 浮點數與浮點數相加 2.0 2.0 4.0 二進位制儲存精度誤差 1.1 1.3 2.4000000000000004 整數與浮點數相加 2 2.0 4.0字串之...

python增強運算子 Python 運算子過載

python語言提供了運算子過載功能,增強了語言的靈活性,這一點與c 有點類似又有些不同。鑑於它的特殊性,今天就來討論一下python運算子過載。python語言本身提供了很多魔法方法,它的運算子過載就是通過重寫這些python內建魔法方法實現的。這些魔法方法都是以雙下劃線開頭和結尾的,類似於x的形...