python運算子的運算,以及優先順序

2021-09-27 07:47:21 字數 1533 閱讀 4547

1、邏輯運算子

(1)and

邏輯表示式:x and y;   描述:布林"與" --- 如果 x 為 false,x and y 返回 false,否則它返回 y 的計算值。

(2)or

邏輯表示式:x or y;   描述:布林"或" --- 如果 x 是非 0(判斷x是true),它返回 x 的值,否則它返回 y 的計算值。

(3)not

邏輯表示式:not x;   描述:布林"非" --- 如果 x 為 true,返回 false 。如果 x 為 false,它返回 true。

例題:求1+2+3+...+n,要求不能使用乘法,while,for,if,else,switch,case等。

def get_n_sum(n):

if n<2:

return n

s=nreturn s and s+get_n_sum(n-1) # 如果s!=0,則執行後面的運算,否則不執行後面的運算

2、位運算子

假設  a=60,b=13

(1)&

描述:按位與運算子:參與運算的兩個值,如果兩個相應位都為1,則該位的結果為1,否則為0;   例項:(a & b) 輸出結果 12 ,二進位制解釋: 0000 1100。

(2)|

描述:按位或運算子:只要對應的二個二進位有乙個為1時,結果位就為1;   例項:(a | b) 輸出結果 61 ,二進位制解釋: 0011 1101。

(3)^

描述:按位異或運算子:當兩對應的二進位相異時,結果為1;   例項:(a ^ b) 輸出結果 49 ,二進位制解釋: 0011 0001。

(4)~

描述:按位取反運算子:對資料的每個二進位制位取反,即把1變為0,把0變為1 。~x 類似於 -x-1;   例項:(~a ) 輸出結果 -61 ,二進位制解釋: 1100 0011,在乙個有符號二進位制數的補碼形式。注意python沒有無符號右移操作,所以需要越界檢查.

(5)<<

描述:左移動運算子:運算數的各二進位全部左移若干位,由 << 右邊的數字指定了移動的位數,高位丟棄,低位補0,數值上乘以2的若干次冪;   例項:a << 2 輸出結果 240 ,二進位制解釋: 1111 0000。注意python沒有無符號右移操作,所以需要越界檢查.

(6)>>

描述:右移動運算子:把">>"左邊的運算數的各二進位全部右移若干位,>> 右邊的數字指定了移動的位數,低位丟棄,高位補0,數值上地板除以2的若干次冪;   例項:a >> 2 輸出結果 15 ,二進位制解釋: 0000 1111。注意python沒有無符號右移操作,所以需要越界檢查.

例子:不使用加減乘除做加法(待寫)

def add(num1,num2):

if not num2:

3、python運算子優先順序:

python 運算子 Python運算子

python語言支援以下型別的運算子 算術運算子 比較 關係 運算子 賦值運算子 邏輯運算子 位運算子 成員運算子 身份運算子 運算子優先順序 1 算術運算子 加號 減號 乘 除 取餘 乘方 整除 1 其中除號 要注意 在python2中,用作整除。解決方法有三 1 兩個相除的數中有乙個為實數。2 ...

python 運算子 python(運算子)

一 運算子 1.算數運算子 1 加 注意 字串與整數之間不能進行相加,需要通過str 或int 進行轉換資料型別 整數與整數相加 1 1 浮點數與浮點數相加 2.0 2.0 4.0 二進位制儲存精度誤差 1.1 1.3 2.4000000000000004 整數與浮點數相加 2 2.0 4.0字串之...

Python物件以及運算子

python是一種物件導向的語言,類則是所有資料型別的基礎。識別符號 物件和賦值語句 在python語言的所有語句中,最重要的就是賦值語句。temperature 98.6 temperature作為識別符號,與右邊的物件相關聯。可以通過向現有物件指定第二個識別符號建立乙個別名 一旦建立了別名,兩個...