數值工廠函式總結類(工廠函式) 操作
bool(obj) b返回obj物件的布林值,也就是 obj.__nonzero__()方法的返回值。
int(obj, base=10)返回乙個字串或數值物件的整數表 示, 類似string.atoi();
從python 1.6起, 引入了可選的進製引數。
long(obj, base=10)返回乙個字元或資料物件的長整數表 示,類似string.atol(),
從python1.6起, 引入了可選的進製引數 float(obj) ,
返回乙個字串或資料物件的浮點數 表示,類似string.atof()。
complex(str) or返回乙個字串的複數表示,或 者根據給定的實數,
complex(real, imag=0.0)(及乙個可選 的虛數部分)生成乙個複數物件。
1、分類
python 有五個運算內建函式用於數值運算:
abs(num), coerce(num1,num2), divmod(num1,num2), pow(num1,num2,mod=1)和 round(flt,ndig=0)
其中abs()返回給定引數的絕對值。如果引數是乙個複數, 那麼就返回math.sqrt(num.real2 + num.imag2).
coerce()是乙個資料型別轉換函式,不過它的行為更像乙個運算子.數coerce()為程式設計師提供了不依賴python 直譯器,而是自定義兩個數值型別轉換的方法。對一種新建立的數值型別來說, 這個特性非常有用.函式coerce()僅返回乙個包含型別轉換完畢的兩個數值元素的元組.
divmod()內建函式把除法和取餘運算結合起來, 返回乙個包含商和餘數的元組.對整數來說,它的返回值就是地板除和取餘操作的結果.對浮點數來說,返回的商部分是math.floor(num1/num2),對複數來說,商部分是ath.floor((num1/num2).real).
pow()它和雙星號 (**)運算子都可以進行指數運算.不過二者的區別並不僅僅在於乙個是運算子,乙個是內建函式.在python 1.5 之前,並沒有 ** 運算子,內建函式pow()還接受第三個可選的引數,乙個餘數引數.如果有這個引數的, pow() 先進行指數運算,然後將運算結果和第三個引數進行取餘運算.這個特性主要用於密碼運算,並且比 pow(x,y) % z 效能更好, 這是因為這個函式的實現類似於c 函式pow(x,y,z).
round()用於對浮點數進行四捨五入運算。它有乙個可選的小數字數引數.如果不提供小數字引數, 它返回與第乙個引數最接近的整數(但仍然是浮點型別).第二個引數告訴round 函式將結果精確到小數點後指定位數.
2、函式int()/round()/math.floor()它們之間的不同之處:
函式 int() 直接截去小數部分.(返回值為整數)
函式 floor() 得到最接近原數但小於原數的整數.(返回值為浮點數)
函式 round() 得到最接近原數的整數.(返回值為浮點數)
3、進製轉換函式:
返回字串表示的8 進製和16 進製整數,它們分別是內建函式:
oct()和 hex(). oct(255)='0377'/hex(255)='0xff'
函式chr()接受乙個單位元組整數值(0到255),返回乙個字串(ascii),其值為對應的字元.chr(97)='a'
函式ord()則相反,它接受乙個字元(ascii 或 unicode),返回其對應的整數值.ord('a')=65
python 返回多個函式值
python 函式返回值有兩種形式 1 返回乙個值。2 返回多個值。現看看返回乙個值的吧。deffirstvalue a,b c a b return cprint firstvalue 1,2 結果 3 再看看返回多個值的 那怎麼可以返回多個值呢,其他的語言一般呼叫函式的話,只能返回乙個值,可能我...
Python函式預設引數值
python的函式機制提供了可選引數的功能,可選引數需要放在引數列表的後幾個引數。當呼叫這些函式時,如果不想設定這些引數,就可以不用設定而直接使用函式定義的時候設定的引數預設值。同樣的,呼叫函式的時候也可以重新設定引數,這將覆蓋預設設定的引數。def func x,y 2 print x y fun...
python內建數值處理函式
absdivmodfloathexintmaxminoctpowround作為python內建數值處理函式。絕對值函式,返回當前數值的絕對值。abs 5 5 abs 9.3 9.3求商和餘數,將兩個 非複數 作為實參,返回商和餘數。等同於 a b,a b divmod 4 2 2,0 divmod ...