python支援多種數字型別:整型、長整型、布林型、雙精度浮點型、十進位制浮點型和複數
數字提供了標量貯存和直接訪問,不可更改。(變更數字的值會生成新的物件)
給變數更新值的時候,並不是更改了物件(數字是不可更改的物件),而是新建了乙個物件,將這個物件的值引用給變數
按照python的法則,無法真正刪除乙個數值物件,僅僅是不再使用它。當然,你可以使用del來刪除乙個數值物件的應用。
python的標準整型等價於c的(有符號)長整型。一般以十進位制表示(八進位制以數字「0」開始,十六進製制以「0x」或「0x」開始)
python的長整型能表達的數值取決於機器支援的(虛擬)記憶體大小有關。在整型後面加個l(大寫小寫都可以,當然現在幾乎沒有什麼區別,除非你明確想要長整型),表示這個整型是長整型。(盡量使用l而不是l以免和1弄混,這裡可以使用str()函式和repr()函式來讀取,這樣你就可以看到他們的區別)可以是十進位制、八進位制、十六進製制。
關於python中複數的幾個概念:
複數的屬性如下:
複數屬性 屬性
描述num.real
該複數的實部
num.imag
該複數的虛部
num.conjugate()
返回該複數的共軛複數
兩個數字型別相加的時候,python會自動檢查,如果兩個運算元是同一種資料型別,沒有必要進行型別轉換,僅當兩個運算元型別不一致時,python才會去檢查是否可以將其中乙個轉換成另外乙個。轉換過程遵守以下幾個原則:
數字型別的轉換是自動進行的,如果明確指定某種資料型別進行特殊轉換的場合,python提供了coerce()內建函式來實現。
傳統除法:對整型的除法捨去了小數部分僅保留整數部分,對浮點型執行真正的除法。
可以執行from __future__ import division來讓所有除法都返回真實的商
//:可以對所有數值型別只執行地板除(捨去小數部分僅保留整數部分)
算術操作符
算術操作符
功能expr 1 ** expr 2
表示式一的表示式二乘方
+expr 1
結果符號不變
-expr 1
對結果符號取負
expr 1 * expr 2
表示式一乘以表示式二
expr 1/expr 2
表示式一除以表示式二(傳統除或者真正除)
expr 1//expr 2
表示式一地板除表示式二
expr 1%expr 2
表示式一對表示式二取餘
expr 1+expr 2
表示式一加表示式二
expr 1-expr 2
表示式一減表示式二
**高於單目操作符(可以加括號來改變)
python整型支援標準位運算:
位操作符
功能~num
對數的每一位取反。結果為-(num+1)
num1
num1>>num2
num1右移num2位
num1&num2
num1與num2按位與
num1^num2
num1異或num2
num1|num2
num1與num2按位或
工廠函式:bool(obj)、int(obj,base=10)(直接擷取小數部分)、long(obj,base=10)、float(obi)、complex(str) or complex(real,inag=0.0)
數值運算內建函式 函式
功能abs(num)
返回num的絕對值
coerce(num1,num2)
將num1和num2轉化為同一型別,然後以元組的形式返回
floor(num)
得到最接近num但小於num的整型(返回浮點型)
divmod(num1,num2)
返回元組(num1/num2,num1%num2)
pow(num1,num2,mod=1)
取num1的num2次方,提供mod引數後,計算結果再對mod取餘
round(flt,ndig=1)
接受浮點型flt並四捨五入,儲存ndig位小數,ndig預設為0
僅適用於整型的內建函式 函式
操作hex(num)
將數字轉換成十六進製制並以字串返回
oct(num)
將數字轉換成八進位制並以字串返回
chr(num)
將ascii值的數字轉換為ascii字元(0<=num<=255)
ord(chr)
接受乙個ascii或unicode字元,返回對應值
unichr(num)
接受unicode碼值返回對應字元
布林型別主要概念:
數字型別相關模組 模組
介紹decimal
十進位制浮點運算類decimal
array
高效數值陣列(字元、整型、浮點型等)
math/cmath
標準c庫數**算函式。常規數學在math模組,複數運算在cmath模組
operator
數字操作符的函式實現
random
多種偽隨機數生成器
random常用函式
randint()
兩個整型引數,返回二者間隨機整型
randrange()
接受和range()函式一樣的引數,隨機返回range([start,]stop[,step])結果的一項
uniform()
幾乎和randint()一樣,不過返回二者間的浮點型
random()
類似uniform(),不過下限恒等0.0,上限恒等1.0
choice
隨機返回給定序列的乙個元素
第五章 數字
整形 長整形 布林型 雙精度浮點型 十進位制浮點型和複數。在賦值的同時,被建立。例子a 1 print a結果1例子a 1 print a,id a a 32 print a,id a 結果1 49373672 32 49372928例子a 32 print a,id a del a print a...
第五章 數字
python的數字型別 在python中,數字並不是乙個真正的物件型別,而是乙個類似型別的分類。python數字型別的完整工具包括 1 數字常量 整數和浮點數常量。python2.6中的整數 一般整數和長整數。python3.0中的整數 乙個單獨的型別。十六進製制數 八進位制和二進位制常量。複數。編...
第五章 數字型別
python表示式操作符 操作符 描述 yield 生成器函式傳送協議 lambda args expression 生成匿名函式名 x if y else z 三元選擇表示式 x or y 邏輯或,x為假執行y x and y 邏輯與 not x 邏輯非 x in y,x not in y 成員關...