python運算和運算符


運算和運算符
運算:一個或者一個以上的數據經過變化得到一個新值的過程
運算符:運算的符號就是運算符
分類:
1.算術運算
2.比較運算
3.賦值運算
4.邏輯運算
5.位運算 |
6.身份檢測運算 is , is not
7.成員檢測運算 in ,not in

1算術運算
1.+ 加法運算符
2.- 減法運算符
3.* 乘法運算符
4./ 除法運算符
5.** 冪運算
6.// 地板除運算符(取商運算符)
7.% 取余運算符

2比較運算
比較運算實際是ascii碼的比較
1. > 大於運算符
2. < 小於運算符
3. >= 大於等於運算符
4. <= 小於等於運算符
5. == 等於運算符
6. != 不等於運算符

3賦值運算
1. = 賦值運算符
2. += 加法賦值運算 a += 1 等同於 a = a+1
3. -= 減法賦值運算
4. *= 乘法賦值運算
5. /= 除法賦值運算
6. %= 取余賦值運算
7. //= 取商賦值運算
8. **= 冪賦值運算

4邏輯運算(布爾值之間的運算)
1.and 邏輯與運算 bool and bool 有假則假
2.or 邏輯或運算 bool or bool 有真則真
3.not 邏輯非運算 not bool 假變真真變假

5位運算(補碼的運算)
注意:位運算過程中,補碼的高位數也參與運算
1. & 按位與運算 參與運算的兩個值,如果兩個相應位都為1,則該位的結果為1,否則為0
2. | 按位或運算 只要對應的二個二進位有一個為1時,結果位就為1。
3. ~ 按位非運算 對數據的每個二進制位取反,即把1變為0,把0變為1。
4. ^ 按位異或運算 當兩對應的二進位相異時,結果為1,否則為0。
5. << 左移運算 運算數的各二進位全部左移若干位,低位補0。<< 右邊的數字指定了移動的位數
6. >> 右移運算 把">>"左邊的運算數的各二進位全部右移若干位,>> 右邊的數字指定了移動的位數

6.身份運算(檢測兩個數據在內存中是否是同一個值)
可以說如果內存地址相同,那么值肯定相同,但是如果值相同,內存地址不一定相同。
is 檢測一個數據和另外一個數據在內存中是否是同一個值 x is y , 類似 id(x) == id(y) , 如果引用的是同一個對象則返回 True,否則返回 False
is not 檢測一個數據和另外一個數據在內存中是否不是同一個值

以下結論僅適用於windows,python3.7版本
-->Number 部分
1.對於整型而言,相同值 id一致
2.對於浮點數而言,相同值 id一致
3.布爾值而言,值相同情況下,id一致
4.復數而言,值相同情況下,id一致
超過 -5到256 的整型,每次執行id值都會改變。(小數池)
-->容器類型部分
5.字符串而言,字符串值相同情況下,id一致
6.元組而言,值相同的情況下,id一致
7.列表,字典,集合無論什么情況 id標識都不同
#7成員檢測運算
in 檢測一個數據是否存在於容器當中
not in 檢測一個數據是否不存在於容器當中
注意:字典只能檢測鍵,無法檢測值
運算優先級
從大到小(有括號先算括號里面的):
**(冪運算)
~(按位非運算)
+-(正負數)
*/% //(乘法除法取余取商)
+-(加減)
<< >>(左移右移)
&(按位與運算)
^(按位異或運算)
|(按位或運算)
< <= > >= != ==(比較運算)
= %= /= //= -= += *= **= (賦值運算符)
is is not(身份運算)
in not in(成員檢測)
not(邏輯非運算)
and(邏輯與運算)
or(邏輯或運算)


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM