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作為識別符號,與右邊的物件相關聯。可以通過向現有物件指定第二個識別符號建立乙個別名 一旦建立了別名,兩個...