運(yùn)算符
算術(shù) 運(yùn)算符:
以下設(shè)置變量 a=10疲恢,變量 b=20:
>>> a = 10
>>> b = 20
符號:+ 加,兩個對象相加
>>> a + b
30
符號: - 減考传,得到負(fù)數(shù)或是一個數(shù)減去另一個數(shù)
>>> - 100
-100
>>> b - a
10
符號:* 乘严嗜,兩個數(shù)相乘或是返回一個被重復(fù)若干次的字符串
>>> a * b
200
>>> c = "abc"
>>> c * 3
'abcabcabc'
符號:/ 除,b / a 輸出結(jié)果 2.0
>>> b / a
2.0
符號:% 取模(取余數(shù))翔曲,返回除法的余數(shù) b % a 輸出結(jié)果 0
>>> b % a
0
符號:** 冪,返回 a 的 b 次冪劈愚,a**b 為10的20次方
>>> a ** b
100000000000000000000
符號:// 取整除瞳遍,向下取接近除數(shù)的整數(shù)
>>> 10 // 3
3
>>> 9 // 2
4
>>> -9 // 2
-5
比較 運(yùn)算符
以下假設(shè)變量a為10,變量b為20:
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
== | 等于 | 比較對象是否相等 (a == b) 返回 False菌羽。 |
!= | 不等于 | 比較兩個對象是否不相等 (a != b) 返回 True掠械。 |
> | 大于 | 返回x是否大于y (a > b) 返回 False。 |
< | 小于 | 返回x是否小于y注祖。 (a < b) 返回 True猾蒂。 |
>= | 大于等于 | 返回x是否大于等于y。 (a >= b) 返回 False是晨。 |
<= | 小于等于 | 返回x是否小于等于y肚菠。 (a <= b) 返回 True。 |
所有比較運(yùn)算符返回1表示真罩缴,返回0表示假蚊逢。這分別與特殊的變量True和False等價。注意箫章,區(qū)分大小寫烙荷,這些變量名的第一個字母是大寫。
賦值 運(yùn)算符
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
= | 簡單的賦值運(yùn)算符 | c = a + b 將 a + b 的運(yùn)算結(jié)果賦值為 c |
+= | 加法賦值運(yùn)算符 | c += a 等效于 c = c + a |
-= | 減法賦值運(yùn)算符 | c -= a 等效于 c = c - a |
*= | 乘法賦值運(yùn)算符 | c *= a 等效于 c = c * a |
/= | 除法賦值運(yùn)算符 | c /= a 等效于 c = c / a |
%= | 取模賦值運(yùn)算符 | c %= a 等效于 c = c % a |
**= | 冪賦值運(yùn)算符 | c **= a 等效于 c = c ** a |
//= | 取整除賦值運(yùn)算符 | c //= a 等效于 c = c // a |
位 運(yùn)算符
- 關(guān)于計(jì)算機(jī)系統(tǒng)中數(shù)字的不同進(jìn)制:
2 進(jìn)制是以 0b 開頭的: 例如: 0b11 則表示十進(jìn)制的 3
8 進(jìn)制是以 0o 開頭的: 例如: 0o11 則表示十進(jìn)制的 9
16 進(jìn)制是以 0x 開頭的: 例如: 0x11 則表示十進(jìn)制的 17
分別使用 bin()檬寂,int()终抽,oct(),hex() 方法可輸出數(shù)字的二進(jìn)制,十進(jìn)制昼伴、八進(jìn)制匾旭,十六進(jìn)制形式
各種進(jìn)制的轉(zhuǎn)換方法
>>> bin(60)
'0b111100'
>>> bin(13)
'0b1101'
>>>
按位運(yùn)算符是把數(shù)字看作二進(jìn)制來進(jìn)行計(jì)算
下表中變量 a 為 60,b 為 13二進(jìn)制格式如下:
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
& | 按位與運(yùn)算符 | 參與運(yùn)算的兩個值,如果兩個相應(yīng)位都為1,則該位的結(jié)果為1,否則為0 (a & b) 輸出結(jié)果 12 亩码,二進(jìn)制解釋: 0000 1100 |
| | 按位或運(yùn)算符 | 只要對應(yīng)的二個二進(jìn)位有一個為1時季率,結(jié)果位就為1。 (a | b) 輸出結(jié)果 61 描沟,二進(jìn)制解釋: 0011 1101 |
^ | 按位異或運(yùn)算符 | 當(dāng)兩對應(yīng)的二進(jìn)位相異時飒泻,結(jié)果為1 (a ^ b) 輸出結(jié)果 49 ,二進(jìn)制解釋: 0011 0001 |
二進(jìn)制位數(shù)的變化與結(jié)果
>>> a = 60 # 60 = 0011 1100
>>> b = 13 # 13 = 0000 1101
>>> c = 0
>>> c = a & b; # 12 = 0000 1100
12
>>> c = a | b; # 61 = 0011 1101
61
>>> c = a ^ b; # 49 = 0011 0001
49
運(yùn)算符 | 描述 | 實(shí)例 |
---|---|---|
~ | 按位取反運(yùn)算符 對數(shù)據(jù)的每個二進(jìn)制位取反,即把1變?yōu)?,把0變?yōu)?吏廉。~x 類似于 -x-1 | (~a ) 輸出結(jié)果 -61 泞遗,二進(jìn)制解釋: 1100 0011, 在一個有符號二進(jìn)制數(shù)的補(bǔ)碼形式席覆。 |
<< | 左移動運(yùn)算符:運(yùn)算數(shù)的各二進(jìn)位全部左移若干位史辙,由"<<"右邊的數(shù)指定移動的位數(shù),高位丟棄佩伤,低位補(bǔ)0聊倔。 | a << 2 輸出結(jié)果 240 ,二進(jìn)制解釋: 1111 0000 |
>> | 右移動運(yùn)算符:把">>"左邊的運(yùn)算數(shù)的各二進(jìn)位全部右移若干位生巡,">>"右邊的數(shù)指定移動的位數(shù) | a >> 2 輸出結(jié)果 15 耙蔑,二進(jìn)制解釋: 0000 1111 |
二進(jìn)制位數(shù)的變化與結(jié)果
>>> c = ~a; # -61 = 1100 0011
-61
>>> c = a << 2; # 240 = 1111 0000
240
>>> c = a >> 2; # 15 = 0000 1111
15