運算子
描述例項+加
a+b,將兩個物件相加-減
a-b,將兩個物件相減*乘
a*b,將兩個物件相乘/除
a/b,將兩個物件相除
//整除
a//b,返回商的整數部分,9//2 = 4 , 9.0 = 4.0%取餘
a%b,返回除法的餘數,9%2 = 1
**指數
a**b,a的b次方
()小括號
提高運算子的優先順序
在混合運算時,優先順序順序為:指數高於*/%//高於+ -,為了避免歧義,建議使用()來處理運算子的優先順序。並且,不同型別的資料在進行混合運算時,整數會自動轉換成浮點數進行運算。
# 單個變數賦值
>>> num = 10
>>> num
10# 同時為多個變數賦值(使用等號連線)
>>> a = b = 4
>>> a
4>>> b
4>>>
# 多個變數賦值(使用逗號分隔),python獨有的語法
>>> num1, f1, str1 = 100, 3.14, "hello"
>>> num1
100>>> f1
3.14
>>> str1
"hello"
# 語法錯誤,值的個數超過變數的個數,賦值失敗
>>> num1,num2=(1,2,3)
traceback (most recent call last):
file "", line 1, in valueerror: too many values to unpack (expected 2)
# 語法錯誤,變數的個數超過值得個數,賦值失敗
>>> num1,num2,num3,num4=(1,2,3)
traceback (most recent call last):
file "", line 1, in valueerror: not enough values to unpack (expected 4, got 3)
運算子
描述+=
加法賦值運算子
-=減法賦值運算子
*=乘法賦值運算子
/=除法賦值運算子
//取整除賦值運算子
%=取模賦值運算子
**=冪賦值運算子
# 示例:+=
>>
> a =
100>>
> a +=
1# 相當於執行 a = a + 1
>>
> a
101# 示例:*=
>>
> a =
100>>
> a *=
2# 相當於執行 a = a * 2
>>
> a
200# 示例:*=,運算時,符號右側的表示式先計算出結果,再與左邊變數的值運算
>>
> a =
100>>
> a *=1+
2# 相當於執行 a = a * (1+2)
>>
> a
300
注意:賦值運算子自右向左運算,將等號右邊的值賦給等號左邊,所以,等號的左邊一定不能是常量或者表示式。
比較運算子的結果是乙個布林值。
運算子描述
==等於
!=不等於
>
大於<>
不等於(在python2中可以使用)
<
小於》 =
大於等於
< =
小於等於
運算子邏輯表示式
描述and
x and y
只要有乙個運算數是false,結果就是false;只有所有的運算數都是true時,結果才是true;做取值運算時,取第乙個為false的值,如果所有的值都是true,取最後乙個值
orx or y
只要有乙個運算數是true,結果就是true;只有所有的運算數都是false時,結果才是false;做取值運算時,取第乙個為true的值,如果所有的值都是false,取最後乙個值
notnot x
布林「非」,如果x為true,返回false;如果x為false,返回true
a =
34b =
12print
((a > b)
and(b >10)
and(a >30)
and(a >50)
)print
((a > b)
and(b >10)
and(a >30)
and(a <50)
)print
(a and b and
'hello'
and0
and123
)print
(a and b and
'hello'
and123
and'hi'
)print
((a >50)
or(b <10)
or a > b or
(a == b)
)print
((a >50)
or(b <10)
or a < b or
(a == b)
)print(0
ornone
or a or'')
print(0
or""
or''
ornone
)
a =
34a >
10and
print
('hello world'
)#hello world
a <
10and
print
('hello world'
)#false
a >
10or
print
('你好世界'
)#true
a <
10or
print
('你好世界'
)#hello world
安位運算子是把數字看作二進位制來進行計算的。
a 為60,b為13.
a =
0011
1100
# 60的二進位制
b =0000
1101
# 13的二進位制--
----
----
----
---a&b =
0000
1100
a|b =
0011
1101
a^b =
0011
0001
~a =
1100
0011
運算
描述示例
&按位與運算:參與運算的兩個值,如果兩個相應位都為1,則該位的結果為1,否則為0
(a & b) 輸出結果 12 ,二進位制解釋: 0000 1100
|按位或運算子:只要對應的二個二進位有乙個為1時,結果位就為1
(a|b)輸出結果61,二進位制解釋:0011 1101
^按位異或運算子:當兩對應的二進位相異時,結果為1
(a ^ b) 輸出結果 49 ,二進位制解釋: 0011 0001
~按位取反運算子:對資料的每個二進位制位取反,即把1變為0,把0變為1 。~x 類似於 -x-1
(~a ) 輸出結果 -61 ,二進位制解釋: 1100 0011,在乙個有符號二進位制數的補碼形式
<<
左移動運算子:運算數的各二進位全部左移若干位,由<<右邊的數字指定了移動的位數,高位丟棄,低位補0
a << 2 輸出結果 240 ,二進位制解釋: 1111 0000
>>
右移動運算子:把">>"左邊的運算數的各二進位全部右移若干位,>>右邊的數字指定了移動的位數
a >> 2 輸出結果 15 ,二進位制解釋: 0000 1111
練習:
color =
0xf0384e
red = color >>
16green =
(color &
0x00ff00
)>>
8blue = color &
0x0000ff
運算子
描述**
指數 (最高優先順序)
~ + -
按位翻轉, 一元加號和減號 (最後兩個的方法名為 +@ 和 -@)
* / % //
乘,除,取模和取整除
+ -加法減法
>> <<
右移,左移運算子
&位 『and』
^ |位運算子
<= < > >=
比較運算子
<> == !=
等於運算子
= %= /= //= -= += *= **=
賦值運算子
is ,is not
身份運算子
in ,not in
成員運算子
not>and>or
邏輯運算子
在以後的實際開發中,如果有多種運算子進行混合運算時,強烈建議使用小括號來手動的控制運算子的優先順序!
3 python講義筆記 運算子和表示式
python是一種強型別語言 要求運算子兩邊的運算元必須是同乙個型別的,否則必須轉換 函式名函式值 int x,基數 將數字或字串轉換為整數,如果x為浮點數,則自動截斷小數部分 float x 將x轉換成浮點型 str x 將x轉換成字串,適合人閱讀 bool x 轉換成bool型別 的true或 ...
python3運算子 Python3 運算子
python3 運算子 python3 支援以下型別運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 算術運算 a b 2,3 運算子說明 示例加 將兩個物件相加 a b 結果 5 減 將兩個物件相減 a b 結果 1 乘 將兩個物件相...
python3運算子 Python3運算子
什麼是運算子?本章節主要說明python的運算子。舉個簡單的例子 4 5 9。例子中,4 和 5 被稱為運算元,稱為運算子。python語言支援以下型別的運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 接下來讓我們乙個個來學習pyth...