Python Number(數字)

謝大腳的好朋友發表於2020-11-25

Python Number(數字)

Python Number 資料型別用於儲存數值。

資料型別是不允許改變的,這就意味著如果改變 Number 資料型別的值,將重新分配記憶體空間。

以下例項在變數賦值時 Number 物件將被建立:

var1 = 1
var2 = 10

您也可以使用del語句刪除一些 Number 物件引用。

del語句的語法是:

del var1[,var2[,var3[....,varN]]]]

您可以通過使用del語句刪除單個或多個物件,例如:

del var
del var_a, var_b

Python 支援四種不同的數值型別:

  • 整型(Int) - 通常被稱為是整型或整數,是正或負整數,不帶小數點。
  • 長整型(long integers) - 無限大小的整數,整數最後是一個大寫或小寫的L。
  • 浮點型(floating point real values) - 浮點型由整數部分與小數部分組成,浮點型也可以使用科學計數法表示(2.5e2 = 2.5 x 102 = 250)
  • 複數(complex numbers) - 複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型。
intlongfloatcomplex
1051924361L0.03.14j
100-0x19323L15.2045.j
-7860122L-21.99.322e-36j
0800xDEFABCECBDAECBFBAEl32.3+e18.876j
-0490535633629843L-90.-.6545+0J
-0x260-052318172735L-32.54e1003e+26J
0x69-4721885298529L70.2-E124.53e-7j
  • 長整型也可以使用小寫"L",但是還是建議您使用大寫"L",避免與數字"1"混淆。Python使用"L"來顯示長整型。
  • Python還支援複數,複數由實數部分和虛數部分構成,可以用a + bj,或者complex(a,b)表示, 複數的實部a和虛部b都是浮點型

Python Number 型別轉換

int(x [,base ])         將x轉換為一個整數  
long(x [,base ])        將x轉換為一個長整數  
float(x )               將x轉換到一個浮點數  
complex(real [,imag ])  建立一個複數  
str(x )                 將物件 x 轉換為字串  
repr(x )                將物件 x 轉換為表示式字串  
eval(str )              用來計算在字串中的有效Python表示式,並返回一個物件  
tuple(s )               將序列 s 轉換為一個元組  
list(s )                將序列 s 轉換為一個列表  
chr(x )                 將一個整數轉換為一個字元  
unichr(x )              將一個整數轉換為Unicode字元  
ord(x )                 將一個字元轉換為它的整數值  
hex(x )                 將一個整數轉換為一個十六進位制字串  
oct(x )                 將一個整數轉換為一個八進位制字串  

Python math 模組、cmath 模組

Python 中數學運算常用的函式基本都在 math 模組、cmath 模組中。

Python math 模組提供了許多對浮點數的數學運算函式。

Python cmath 模組包含了一些用於複數運算的函式。

cmath 模組的函式跟 math 模組函式基本一致,區別是 cmath 模組運算的是複數,math 模組運算的是數學運算。

要使用 math 或 cmath 函式必須先匯入:

import math

檢視 math 檢視包中的內容:

>>> import math
>>> dir(math)
['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'gcd', 'hypot', 'inf', 'isclose', 'isfinite', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'log2', 'modf', 'nan', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau', 'trunc']
>>>

下文會介紹各個函式的具體應用。

檢視 cmath 檢視包中的內容

>>> import cmath
>>> dir(cmath)
['__doc__', '__file__', '__loader__', '__name__', '__package__', '__spec__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atanh', 'cos', 'cosh', 'e', 'exp', 'inf', 'infj', 'isclose', 'isfinite', 'isinf', 'isnan', 'log', 'log10', 'nan', 'nanj', 'phase', 'pi', 'polar', 'rect', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'tau']
>>>

例項

>>> import cmath
>>> cmath.sqrt(-1)
1j
>>> cmath.sqrt(9)
(3+0j)
>>> cmath.sin(1)
(0.8414709848078965+0j)
>>> cmath.log10(100)
(2+0j)
>>>

Python數學函式

函式返回值 ( 描述 )
abs(x)返回數字的絕對值,如abs(-10) 返回 10
ceil(x)返回數字的上入整數,如math.ceil(4.1) 返回 5
cmp(x, y)如果 x < y 返回 -1, 如果 x == y 返回 0, 如果 x > y 返回 1
exp(x)返回e的x次冪(ex),如math.exp(1) 返回2.718281828459045
fabs(x)返回數字的絕對值,如math.fabs(-10) 返回10.0
floor(x)返回數字的下舍整數,如math.floor(4.9)返回 4
log(x)如math.log(math.e)返回1.0,math.log(100,10)返回2.0
log10(x)返回以10為基數的x的對數,如math.log10(100)返回 2.0
max(x1, x2,…)max(x1, x2,…) 返回給定引數的最大值,引數可以為序列。
min(x1, x2,…)返回給定引數的最小值,引數可以為序列。
modf(x)返回x的整數部分與小數部分,兩部分的數值符號與x相同,整數部分以浮點型表示。
pow(x, y)x**y 運算後的值。
round(x [,n])返回浮點數x的四捨五入值,如給出n值,則代表舍入到小數點後的位數。
sqrt(x)返回數字x的平方根

Python隨機數函式

隨機數可以用於數學,遊戲,安全等領域中,還經常被嵌入到演算法中,用以提高演算法效率,並提高程式的安全性。

Python包含以下常用隨機數函式:

函式描述
choice(seq)從序列的元素中隨機挑選一個元素,比如random.choice(range(10)),從0到9中隨機挑選一個整數。
randrange ([start,] stop [,step])從指定範圍內,按指定基數遞增的集合中獲取一個隨機數,基數預設值為 1
random()隨機生成下一個實數,它在[0,1)範圍內。
seed([x])改變隨機數生成器的種子seed。如果你不瞭解其原理,你不必特別去設定seed,Python會幫你選擇seed。
shuffle(lst)將序列的所有元素隨機排序
uniform(x, y)隨機生成下一個實數,它在[x,y]範圍內。

Python三角函式

Python包括以下三角函式:

函式描述
acos(x)返回x的反餘弦弧度值。
asin(x)返回x的反正弦弧度值。
atan(x)返回x的反正切弧度值。
atan2(y, x)返回給定的 X 及 Y 座標值的反正切值。
cos(x)返回x的弧度的餘弦值。
hypot(x, y)返回歐幾里德範數 sqrt(xx + yy)。
sin(x)返回的x弧度的正弦值。
tan(x)返回x弧度的正切值。
degrees(x)將弧度轉換為角度,如degrees(math.pi/2) , 返回90.0
radians(x)將角度轉換為弧度

Python數學常量

常量描述
pi數學常量 pi(圓周率,一般以π來表示)
e數學常量 e,e即自然常數(自然常數)。

相關文章