Python運算符的使用簡單介紹
1、算術運算符
Python 中常用運算符:
| 運算符 | 說明 | 實例 | 結果 |
|---|---|---|---|
| + | 加 | 22.4 + 15 | 37.4 |
| - | 減 | 4.56 - 0.56 | 4 |
| * | 乘 | 5 * 3 | 15 |
| / | 除法(和數學中的規(guī)則一樣) | 8 / 2 | 4 |
| // | 整除(只保留商的整數部分) | 7 // 2 | 3 |
| % | 取模,即返回除法的余數 | 7 % 2 | 1 |
| ** | 次方運算,即返回 x 的 y 次方 | 2 ** 4 | 16,即 2^4 |
+加法運算符:
m = 10 n = 90 sum1 = m + n print(sum1) #當+用于字符串時,還可以拼接字符串 name = "方唐鏡" url = "江蘇蘇州" age = 18 info = name + "的住址是" + url + ",已經" + str(age) + "歲了。" print(info)
執(zhí)行結果:
100
方唐鏡的住址是江蘇蘇州,已經18歲了。
-減法運算符:
m = 100 n = 97 sum1 = m - n print(sum1) x = 45 y = -x print(y)
執(zhí)行結果:
3
-45
*乘法運算符:
n = 4 * 25 m = 34.5 * 6 print(n, m) #將n個字符串連接 str = "hello " print(str * 4)
執(zhí)行結果:
100 207.0
hello hello hello hello
/ 和 // 除法運算符:
print("--------整數不能除盡-----------")
print("24/7 =", 24/7)
print("24//7 =", 24//7)
print("24.0//7 =", 24.0//7)
print("--------整數能除盡-----------")
print("25/5 =", 25/5)
print("25//5 =", 25//5)
print("25.0//5 =", 25.0//5)
print("--------小數除法-----------")
print("12.4/3.5 =", 12.4/3.5)
print("12.4//3.5 =", 12.4//3.5)執(zhí)行結果:
/的計算結果返回的總是小數,不管是否能除盡,也不管參與運算的是整數還是小數。- 當有小數參與運算時,
//返回的結果才是小數,否則就是整數。
--------整數除不盡----------- 24/7 = 3.4285714285714284 24//7 = 3 24.0//7 = 3.0 --------整數能除盡----------- 25/5 = 5.0 25//5 = 5 25.0//5 = 5.0 --------小數除法----------- 12.4/3.5 = 3.542857142857143 12.4//3.5 = 3.0
%求余運算符:
print("-----整數求余-----")
print("7%2 =", 7 % 2)
print("7%-2 =", 7 % -2)
print("-----小數求余-----")
print("7.7%2.2 =", 7.7 % 2.2)
print("-7.7%2.2 =", -7.7 % 2.2)
print("-7.7%-2.2 =", -7.7 % -2.2)
print("---整數和小數運算---")
print("23.4%5 =", 23.4 % 5)
print("23%4.5 =", 23 % 4.5)
print("23.4%-5 =", 23.4 % -5)
print("-23%4.5 =", -23 % 4.5)
print("-23%-4.5 =", -23 % -4.5)執(zhí)行結果:
- 求余運算本質還是是除運算,所以第二個數字不能是 0,不然會報 ZeroDivisionError 錯誤。
- 只有當第二個數字是負數時,求余的結果才是負數。
- 求余運算兩邊的數字都是整數時,求余的結果也是整數;但是只要有一個數字是小數,求余的結果就是小數。
-----整數求余----- 7%2 = 1 7%-2 = -1 -----小數求余----- 7.7%2.2 = 1.0999999999999996 -7.7%2.2 = 1.1000000000000005 -7.7%-2.2 = -1.0999999999999996 ---整數和小數運算--- 23.4%5 = 3.3999999999999986 23%4.5 = 0.5 23.4%-5 = -1.6000000000000014 -23%4.5 = 4.0 -23%-4.5 = -0.5
**次方運算符:
print('----次方運算----')
print('3**2 =', 3**2)
print('2**5 =', 2**5)
print('----開方運算----')
print('9**(1/2) =', 9**(1/2))
print('32**(1/5) =', 32**(1/5))執(zhí)行結果:
----次方運算---- 3**2 = 9 2**5 = 32 ----開方運算---- 9**(1/2) = 3.0 32**(1/5) = 2.0
2、賦值運算符
擴展賦值運算符:
| 運算符 | 說 明 | 用法舉例 | 等價形式 |
|---|---|---|---|
| = | 最基本的賦值運算 | x = y | x = y |
| += | 加賦值 | x += y | x = x + y |
| -= | 減賦值 | x -= y | x = x - y |
| *= | 乘賦值 | x *= y | x = x * y |
| /= | 除賦值 | x /= y | x = x / y |
| %= | 取余數賦值 | x %= y | x = x % y |
| **= | 冪賦值 | x **= y | x = x ** y |
| //= | 取整數賦值 | x //= y | x = x // y |
| &= | 按位與賦值 | x &= y | x = x & y |
| |= | 按位或賦值 | x |= y | x = x | y |
| ^= | 按位異或賦值 | x ^= y | x = x ^ y |
| <<= | 左移賦值 | x <<= y | x = x << y,這里的 y 指的是左移的位數 |
| >>= | 右移賦值 | x >>= y | x = x >> y,這里的 y 指的是右移的位數 |
a = 15
b = 6
c = a + b
print("c 的值為:", c)
c += a
print("c 的值為:", c)
c *= a
print("c 的值為:", c)
c /= a
print("c 的值為:", c)
c %= a
print("c 的值為:", c)
c **= a
print("c 的值為:", c)
c //= a
print("c 的值為:", c)執(zhí)行結果:
c 的值為: 21
c 的值為: 36
c 的值為: 540
c 的值為: 36.0
c 的值為: 6.0
c 的值為: 470184984576.0
c 的值為: 31345665638.0
連續(xù)賦值運算:
將賦值表達式的值再賦值給另外一個變量,這就構成了連續(xù)賦值,如:
a = b = c = 10
c = 100 這個子表達式的值是 10,b = c = 10 表示將 c = 10 的值賦給 b,因此 b 的值也是 10。以此類推,a 的值也是 10。
所以a、b、c 三個變量的值都是 10。
3、比較運算符
| 比較運算符 | 說明 |
|---|---|
大于,如果>前面的值大于后面的值,則返回 True,否則返回 False。 | |
| < | 小于,如果<前面的值小于后面的值,則返回 True,否則返回 False。 |
| == | 等于,如果==兩邊的值相等,則返回 True,否則返回 False。 |
| >= | 大于等于(等價于數學中的 ≥),如果>=前面的值大于或者等于后面的值,則返回 True,否則返回 False。 |
| <= | 小于等于(等價于數學中的 ≤),如果<=前面的值小于或者等于后面的值,則返回 True,否則返回 False。 |
| != | 不等于(等價于數學中的 ≠),如果!=兩邊的值不相等,則返回 True,否則返回 False。 |
比較運算符的使用實例:
print("89是否大于100:", 8 > 100)
print("24*5是否大于等于76:", 24*5 >= 80)
print("45.6是否等于45.6:", 45.6 == 45.6)
print("45是否等于45.0:", 45 == 45.0)
print("False是否小于True:", False < True)
print("True是否等于True:", True == True)執(zhí)行結果:
89是否大于100: False
24*5是否大于等于76: True
45.6是否等于45.6: True
45是否等于45.0: True
False是否小于True: True
True是否等于True: True
4、邏輯運算符
| 運算符 | 含義 | 基本格式 | 說明 |
|---|---|---|---|
| and | 邏輯與運算,等價于“且” | a and b | 當 a 和 b 兩個表達式都為真時,a and b 的結果才為真,否則為假。 |
| or | 邏輯或運算,等價于“或” | a or b | 當 a 和 b 兩個表達式都為假時,a or b 的結果才是假,否則為真。 |
| not | 邏輯非運算,等價于“非” | not a | 如果 a 為真,那么 not a 的結果為假;如果 a 為假,那么 not a 的結果為真。相當于對 a 取反。 |
對于 and 邏輯與運算,兩邊的值都為真最終結果才為真,但是只要其中有一個值為假,那么最終結果就是假:
- 如果左邊表達式的值為假,那么就不用計算右邊表達式的值了,因為不管右邊表達式的值是什么,最終結果都是假,此時 and 會把左邊表達式的值作為最終結果。
- 如果左邊表達式的值為真,那么最終值是不能確定的,and 會繼續(xù)計算右邊表達式的值,并將右邊表達式的值作為最終結果
對于 or 邏輯或運算,兩邊的值都為假最終結果才為假,只要其中有一個值為真,那么最終結果就是真:
- 如果左邊表達式的值為真,那么就不用計算右邊表達式的值了,因為不管右邊表達式的值是什么,最終結果都是真,此時 or 會把左邊表達式的值作為最終結果。
- 如果左邊表達式的值為假,那么最終值是不能確定的,or 會繼續(xù)計算右邊表達式的值,并將右邊表達式的值作為最終結果。
5、位運算符
| 位運算符 | 說明 | 使用形式 | 舉 例 |
|---|---|---|---|
| & | 按位與 | a & b | 4 & 5 |
| | | 按位或 | a | b | 4 | 5 |
| 按位異或 | a ^ b | 4 ^ 5 | |
| ~ | 按位取反 | ~a | ~4 |
| << | 按位左移 | a << b | 4 << 2,表示整數 4 按位左移 2 位 |
| >> | 按位右移 | a >> b | 4 >> 2,表示整數 4 按位右移 2 位 |
按位與&
按位與& 運算符規(guī)則:只有兩個都是1結果才為1,其余情況都為0
| 第一個Bit位 | 第二個Bit位 | 結果 |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 0 |
| 1 | 0 | 0 |
| 1 | 1 | 1 |
實例:
print(12 & 5)
執(zhí)行結果:
4
12 & 5二進制位進行&與運算過程如下:
0000 1100 & 0000 0101 ------------- 0000 0100
按位或 |
按位或 | 運算符規(guī)則:只有兩個都是0結果才為0,其余情況都為1
| 第一個Bit位 | 第二個Bit位 | 結果 |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 1 |
實例:
print(12 | 5)
執(zhí)行結果:
13
12 | 5二進制位進行|或運算過程如下:
0000 1100 | 0000 0101 ------------- 0000 1101
按位異或^
按位異或^ 運算符的規(guī)則:兩個值相同結果為0,不同結果為1
| 第一個Bit位 | 第二個Bit位 | 結果 |
|---|---|---|
| 0 | 0 | 0 |
| 0 | 1 | 1 |
| 1 | 0 | 1 |
| 1 | 1 | 0 |
實例:
print(12 ^ 5)
執(zhí)行結果:
9
12 ^ 5二進制位進行^或運算過程如下:
0000 1100 ^ 0000 0101 ------------- 0000 1001
6、運算符優(yōu)先級和結合性
結合性:先執(zhí)行左邊的叫左結合性,先執(zhí)行右邊的叫右結合性
從上到下優(yōu)先級逐漸減低:
| 運算符說明 | Python運算符 | 結合性 | 優(yōu)先級順序 |
|---|---|---|---|
| 小括號 | ( ) | 無 | 高 |
| 索引運算符 | x[i] 或 x[i1: i2 [:i3]] | 左 | ︿ |
| 屬性訪問 | x.attribute | 左 | | |
| 乘方 | ** | 右 | | |
| 按位取反 | ~ | 右 | | |
| 符號運算符 | +(正號)、-(負號) | 右 | | |
| 乘除 | *、/、//、% | 左 | | |
| 加減 | +、- | 左 | | |
| 位移 | >>、<< | 左 | | |
| 按位與 | & | 右 | | |
| 按位異或 | 左 | | | |
| 按位或 | | | 左 | | |
| 比較運算符 | ==、!=、>、>=、<、<= | 左 | | |
| is 運算符 | is、is not | 左 | | |
| in 運算符 | in、not in | 左 | | |
| 邏輯非 | not | 右 | | |
| 邏輯與 | and | 左 | | |
| 邏輯或 | or | 左 | | |
| 逗號運算符 | exp1, exp2 | 左 | 低 |
到此這篇關于Python運算符的使用簡單介紹的文章就介紹到這了,更多相關Python運算符 內容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關文章希望大家以后多多支持腳本之家!
相關文章
使用python找出list列表中相同元素(指定元素)的所有索引
這篇文章主要給大家介紹了關于使用python找出list列表中相同元素(指定元素)的所有索引,在平時開發(fā)過程中經常遇到需要在數據中獲取特定的元素索引的信息,需要的朋友可以參考下2023-08-08
一文帶你精通Python中*args和**kwargs的應用技巧
如果能在Python中創(chuàng)建適應不同場景的函數,而無需每次都重寫它們,會使得操作簡潔方便,這就是*args和**kwargs的魔力所在,下面我們就來看看它們的具體一些應用技巧吧2024-03-03

