python運算子中 Python中的運算子

2021-10-18 15:55:57 字數 3955 閱讀 6431

python中的運算子: 數**算符、比較運算子、邏輯運算子、賦值運算子

1.數**算符:

+、-、*(乘法)、/(除法)、%(取模、取餘、求餘數)、//(整除)、**(冪運算)

1) + 、-、 *、 / 和數學中的功能一模一樣,沒有區別

print(1 + 1)

print(1 - 1)

print(1 * 1)

注意:/的結果是浮點數。

print(1 / 1) # 1.0

print(5 / 2) # 2.5

2)% - 取模、取餘(求餘數)

print(5 % 2) # 求5除以2的餘數

print(8 % 3) # 2

應用1:判斷整數的奇偶性

根據整數對2取餘的結果是否是零來判斷這個數是否是偶數

print(10 % 2) # 0

print(14 % 2) # 0

print(15 % 2) # 1

應用2:

num = 899 # 求個位數

print(num % 10) # 對10取餘,可以取個位數。

print(num % 100) # 對100取餘,可以取剩餘兩位數

3.) // - 整除(商向小取整數,取整數不要餘數)

print(5/2) # 2.5

print(5//2) # 2

print(2/3)

print(2//3) # 0

print(-5//2) # -3,注意負數,向小取整,-3小於-2,取-3.

應用:取整數的高位數

num = 234

print(num // 100)

練習:將num中的十位數取出來。

a = num // 10

b = a % 10

print(b)

print(num // 10 % 10)

print(num % 10 // 10)

4) ** - 冪運算(可以求開方)

x ** y - 求x的y次方

print(2 ** 3)

print(16 ** 0.5)

2.比較運算子:>、=、<=、!=

所有的比較運算子的結果都是布林值

print(10 > 10)

print(10 < 20)

python中的比較運算子支援表示範圍的連寫方式

age = 18

print(10 <= age <= 28)

print(age >= 10 and age <= 28) # 下劃線是系統提示,**可以修改更簡便。

3.邏輯運算子: and(邏輯與運算)、or(邏輯或運算)、not(邏輯非運算)

實際開發過程中,邏輯運算子的運算物件一般都是布林值,結果也是布林

3.1): and - 邏輯運算子

1)運算規則:全部都是true結果才是true,只要有乙個是false結果就是false

true and true - true

true and false - false

false and true - false

false and false - false

2)應用:如果希望多個條件同時滿足,那麼就使用and將條件進行連線。相當於生活中的並且

練習:定義兩個變數分別儲存乙個學生的績點和操評分,最後根據分數的值列印這個學生是否能拿獎學金。(條件:績點不低於3.5,操評分大於90同時滿足)

3.2) or - 邏輯或

1)運算規則:只要有乙個是true結果就是true,全部都是false結果才是false

true or true - true

true or false - true

false or true - true

false or false - false

2)應用:多個條件中只要有乙個滿足就行,那麼就是or將多個條件進行連線;相當於生活中的或者

練習:判斷乙個數是否能夠被3或者7整除

***能被3或者7整除:true/false

num = 26

print(num, '能被3或者7整除:',num % 3 == 0 or num % 7 == 0)

3.3 ) not - 邏輯非

1)運算物件not 條件

not true - false

not false - true

age = 20

print("是否成年:", age >= 18)

print('是否未成年:', not age >= 18)

練習:判斷乙個數是否不能同時被3和7整除。(在某些條件下用not會很方便,正向寫某些**會特別麻煩的情況時)

num = 26

# 正向寫

print((num % 3 == 0 and num % 7 == 0) or (num % 7 == 0 and num % 3 != 0))

# 用not寫

print(num, '是否不能同時被3和7整除:', not num % 3 == 0 or num % 7 == 0)

練習2: 判斷指定的年是否是閏年

閏年的條件: 1)能被4整除但是不能被100整除 2)能被400整除

year = 2004

print(year, '是否是閏年:', (year % 4 == 0 and year % 100 != 0) or (year % 400 == 0))

3.4 )邏輯運算子的運算物件不是布林

語法:表示式1 and 表示式2 - 如果表示式1的布林值是true,那麼整個運算的結果就是表示式2的值;如果是false整個運算結果是表示式1的值。

表示式1 or 表示式2 -如果表示式1的布林值是true,那麼整個運算的結果就是表示式1的值;如果是false,整個運算結果是表示式2的值

資料的布林值怎麼確定:所有為零為空的資料的布林值都是false(數字的0、 0·0、 0·00、『』、、{}、none),

其他所有資料的布林值全部都是true

print(not 7) # false

print(not 0) #true

3.5) 短路操作

表示式1 and 表示式2 - 如果表示式1的結果是false,程式不會去執行表示式2

表示式1 or 表示式2 - 如果表示式1的結果是true,程式不回去執行表示式2

false and name >= 10 # 單獨打出 name >= 10 會報錯,短路之後就不會出現。

true or name < 10

4.賦值運算子: =、 +=、 -=、 *=、 /=、 %=、 //=、 **=

4.1) 所有的賦值運算子最終的目的都是為了給變數賦值,所以賦值運算子的左邊必須是變數。

#10 = 20

4.1 ) 賦值運算子 =

變數 = 資料 - 將右邊的資料賦值給左邊的變數

4.2) 復合的賦值運算子

變數 += 資料 - 將變數中的資料取出來和指定的資料相加求和,然後將這個和

重新賦值給變數;變數 = 變數 + 資料

注意:復合的賦值運算子的左邊的變數必須是已經賦值過的變數

name += 10

num = 10

num += 2 # num = num + 2 = 10 + 2 = 12

print(num ) # 12

num *= 2 # num = num * 2 = 12 * 2 = 24

print(num)

5.運算子的優先順序

數**算符》比較運算子》邏輯運算》賦值運算

數**算:** > *、/、%、//、 > +、-

有括號先算括號裡面

num = 10 + 20

and的優先順序比or高

print(7 or 8 and 9) # 先算or :9 先算and :7

print(18 + 78 / 2 * 4 and 9 - 5 or 7)

18 + 39 * 4 and 4 or 7

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的形...