#運算
由一個以上的值經過變化得到新值的過程就是運算。
運算符
用于運算的符號就是運算符
運算的分類
1.算數運算
2.比較運算/關系運算
3.賦值運算
4.邏輯運算
5.位運算
6.成員運算
7.身份運算
算數運算
+ 加法運算
- 減法運算
* 乘法運算
/ 除法運算
% 取余運算
// 取商運算/地板除
** 冪運算
注意:python中沒有自增的++,也沒有自減的--運算
關系運算/比較運算
> 大于運算
< 小于運算
== 等于運算
>= 大于等于運算
<= 小于等于運算
!= 運算
注意:python中沒有類型判斷 所以沒有 ===和!== 運算
賦值運算
= 普通賦值運算
+= 加法賦值運算
-= 減法賦值運算
*= 乘法賦值運算
/= 除法賦值運算
%= 取余賦值運算
//= 取商賦值運算
**= 冪賦值運算
注意:所有運算賦值操作的格式都可以轉化為 【變量 = 變量 運算符 值】,等號兩側一定都是變量
var /=5 -> var = var /5
邏輯運算
邏輯運算就是布爾值之間的運算。python只有三種運算方式。
and 邏輯與運算
or 邏輯或運算
not 邏輯非運算
and邏輯與運算:有假則假
洗屁股:
左手洗了左屁股True,右手洗了右屁股True,洗完了屁股True
左手洗了左屁股True,右手沒有洗有屁股False,沒有洗完屁股False
左手沒洗左屁股False,右手洗了右屁股True,沒洗完屁股False
左手沒有洗左屁股False,右手沒有洗右屁股False,沒洗完屁股False
or邏輯或運算:有真則真
孩子丟了找孩子:
你沒找到孩子False,你媳婦也沒有找到孩子False,孩子沒找到!False
你找打了孩子True,你媳婦沒找到孩子False,孩子找到了True
你沒有找到孩子False,你媳婦找到了孩子True,孩子找到了True
你和你媳婦同時找打了孩子(True和True),孩子找到了True
not邏輯非運算:真變假,假變真
大老爺們去泰國!
純爺們(True),做了手術,不是純爺們了(False)
注意:邏輯運算一共四種,python只提供了三種:沒有提供邏輯抑或運算
xor 邏輯抑或運算:相同為假,不同為真
結婚:
一個爺們(True),一個娘們(False),可以結婚(True)
一個娘們(False),一個爺們(True),可以結婚(True)
一個爺們(True),一個爺們(True),不可以結婚(False)
一個娘們(False),一個娘們(False),不可以結婚(False)
位運算
在二進制基礎上進行的邏輯運算就是位運算。
& 按位與運算
| 按位或運算
~ 按位非運算
^ 按位抑或運算
>> 右移運算 相當于地板除2運算(取商)
<< 左移運算 相當于×2運算
成員運算
檢測一個數據是否在指定的容器(復合數據)當中(返回bool)
檢測一個數據1是否在另外一個數據2當中
格式: 數據1 in 數據2
檢測一個數據1是否不再另外一個數據2當中
格式: 數據1 not in 數據2
身份檢測
作用是檢測2個變量在內存中是否是同一個值(返回bool)
檢測2個變量是不是同一個值
格式: 數據1 is 數據2
檢測2個變量是不是不是同一個
格式: 數據1 is not 數據2
運算優先級的問題
我們自己寫程序優先級使用()來解決。
** 指數 (最高優先級)
~ + - 按位翻轉, 一元加號和減號 (最后兩個的方法名為 +@ 和 -@)
* / % // 乘,除,取模和取整除
+ - 加法減法
>> << 右移,左移運算符
& 位 'AND'
^ | 位運算符
<= < > >= 比較運算符
<> == != 等于運算符
= %= /= //= -= += *= **= 賦值運算符
is is not 身份運算符
in not in 成員運算符
not or and 邏輯運算符
注意:我們并不推薦死記硬背優先級,在實際使用中最好使用()解決優先級問題
檢測數據歸屬類型
type() 測試可以使用 開發盡量避免
isinstance() 檢測一個數據是否由指定的類型創建,返回bool
格式: isinstance(變量,檢測的類型)
檢測的類型名稱就是類型轉換的那些功能的名稱,不需要()