python逻辑表达式3+45and_Python 简明教程 --- 5,Python 表达式与运算符
靠代碼行數來衡量開發進度,就像是憑重量來衡量飛機制造的進度。
—— Bill Gates
目錄
1,什么是表達式
表達式是代碼的重要組成部分,一個表達式由運算符和操作數兩部分組成。
一個表達式就描述了對哪些數據,進行了什么樣的操作。
如下就是一個表達式:
sum = 1 + 2
其中,=和+ 都是運算符,=是賦值運算符,+ 是相加運算符,sum,1,2 都是操作數。
這句話的含義是,將1 與 2 相加,并將它們的結果賦值給變量sum。
2,運算符
Python 中包含豐富的運算符,支持各種運算。如下:
算術運算符
位運算符
關系運算符
賦值運算符
邏輯運算符
下面對這些運算符逐一進行介紹。
3,算術運算符
運算符
含義
+
加
-
減
*
乘
/
除
//
除,向下取整
%
取余
**
冪運算
示例:
>>> a = 20
>>> b = 7
>>>
>>> a + b
27
>>> a - b
13
>>> a * b
140
>>> a / b
2.857142857142857
>>> a // b
2
>>> a % b
6
>>> a ** b
1280000000
4,位運算符
進行位運算時,會先將數字轉換成二進制,然后再做位運算。
運算符
含義
&
按位與
|
按位或
^
按位異或
~
按位取反
<<
左移
>>
右移
示例:
>>> a = 20
>>> b = 7
>>> a & b
4
>>> a | b
23
>>> a ^ b
19
>>> ~a # a 按位取反
-21
>>> ~b # b 按位取反
-8
>>> a << 3 # a 左移3 位
160
>>> b >> 2 # b 右移2 位
1
5,關系運算符
關系運算符又叫比較運算符,其計算結果為True 或False。
運算符
含義
==
是否相等
!=
是否不等
>
是否大于
<
是否小于
>=
是否大于等于
<=
是否小于等于
示例:
>>> a = 20
>>> b = 7
>>> a == b
False
>>> a != b
True
>>> a > b
True
>>> a < b
False
>>> a >= b
True
>>> a <= b
False
6,賦值運算符
等號= 是最基本的賦值運算符,= 右邊的值稱為右值,= 左邊的值稱為左值。
賦值運算符= 的含義是將右值賦值給左值。
例如下面代碼,a 為左值,b 為右值,這行代碼的含義是,將b 的值賦值給a:
a = b
下面這些賦值運算符,都是在賦值運算符= 與算術運算符的基礎上衍生出來的,是一種簡寫形式:
運算符
示例
+=
a += b 相當于 a = a + b
-=
a -= b 相當于 a = a - b
*=
a *= b 相當于 a = a * b
/=
a /= b 相當于 a = a / b
//=
a //= b 相當于 a = a // b
%=
a %= b 相當于 a = a % b
**=
a **= b 相當于 a = a ** b
7,邏輯運算符
運算符
含義
and
邏輯與
or
邏輯或
not
邏輯非
示例:
>>> a = True
>>> b = False
>>> a and b
False
>>> a or b
True
>>> not a
False
>>> not b
True
在數字中,非0 為真,0 為假:
>>> not 0 # 0 為 False,not 0 為 True
True
>>> not 1 # 1 為 True,not 1 為 False
False
>>> not 2 # 2 為 True,not 2 為 False
False
>>> not -1 # -1 為 True,not -1 為 False
False
>>> not -2 # -2 為 True,not -2 為 False
False
其實,True 就是 1,False 就是 0:
>>> True.real
1
>>> False.real
0
>>> True == 1
True
>>> False == 0
True
在字符串中,非空字符串為真,空字符串為假:
>>> not '' # '' 為 False,not '' 為 True
True
>>> not 'abc' # 'abc' 為 True,not 'abc' 為 False
False
8,運算符的優先級
運算符有優先級之分,表達式在計算的時候,會先計算優先級較高的,處于同一優先級時,會從左到右計算。
如下表達式,該表達式會先計算2 * 3 結果是6,再計算1 + 6,結果是 7:
>>> 1 + 2 * 3
7
之所以會先計算 2 * 3,就是因為* 的優先級高于+ 的優先級。
小括號()的優先級高于我們上面介紹到的所有運算符的優先級,如果想改變計算順序,可以使用小括號()。
如下表達式,則會先計算1 + 2 結果為3,再計算3 * 3,結果為9:
>>> (1 + 2) * 3
9
下表匯總了上文中介紹到的所有運算符的優先級,從高到低排序,同一行(用,分隔)中的運算符具有相同優先級:
運算符
含義
()
小括號內的表達式優先級最高
**
冪運算
~x,+x,-x
按位取反,正號,負號
*,/,%,//
乘,除,取余,整除
+,-
加,減
<>
左移,右移
&
按位與
^,|
按位異或,按位或
>,=,<=
比較運算
==,!=
等于運算
=,+=,-=,*=,/=,%=,//=,**=
賦值運算
not,and,or
邏輯運算
建議:推薦使用小括號() 來顯示表達式的計算順序,而不依賴運算符本身的優先級,這樣一目了然,方便維護。
(完。)
推薦閱讀:
與50位技術專家面對面20年技術見證,附贈技術全景圖總結
以上是生活随笔為你收集整理的python逻辑表达式3+45and_Python 简明教程 --- 5,Python 表达式与运算符的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: python 下载公众号文章_pytho
- 下一篇: 电脑功耗测试软件_聊一款“躺着都中枪”的