Python 數(shù)字

2022-07-04 14:46 更新

Python 數(shù)字

Python 數(shù)字?jǐn)?shù)據(jù)類型用于存儲數(shù)值。

數(shù)據(jù)類型是不允許改變的,這就意味著如果改變數(shù)字?jǐn)?shù)據(jù)類型的值,將重新分配內(nèi)存空間。

以下實(shí)例在變量賦值時數(shù)字對象將被創(chuàng)建:

var1 = 1
var2 = 10

您也可以使用 ?del ?語句刪除一些數(shù)字對象引用。

?del ?語句的語法是:

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

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

del var
del var_a, var_b

Python 支持四種不同的數(shù)值類型:

  • 整型 (int) - 通常被稱為是整型或整數(shù),是正或負(fù)整數(shù),不帶小數(shù)點(diǎn)。
  • 長整型 (long int) - 無限大小的整數(shù),整數(shù)最后帶一個大寫或小寫的L。(實(shí)際上還是有范圍的)
  • 浮點(diǎn)型( float) - 浮點(diǎn)型由整數(shù)部分與小數(shù)部分組成,浮點(diǎn)型也可以使用科學(xué)計(jì)數(shù)法表示(2.5e2 = 2.5 x 102 = 250)
  • 復(fù)數(shù) ( complex) - 復(fù)數(shù)的虛部以字母J 或 j結(jié)尾 。如:2+3i
int long float complex
10 51924361L 0.0 3.14j
100 -0x19323L 15.20 45.j
-786 0122L -21.9 9.322e-36j
080 0xDEFABCECBDAECBFBAEl 32.3+e18 .876j
-0490 535633629843L -90. -.6545+0J
-0x260 -052318172735L -32.54e100 3e+26J
0x69 -4721885298529L 70.2-E12 4.53e-7j
  • 長整型也可以使用小寫"L",但是還是建議您使用大寫"L",避免與數(shù)字"1"混淆。Python 使用"L"來顯示長整型。
  • Python 還支持復(fù)數(shù),復(fù)數(shù)由實(shí)數(shù)部分和虛數(shù)部分構(gòu)成,可以用 a + bj, 或者 complex(a,b) 表示, 復(fù)數(shù)的實(shí)部 a 和虛部 b 都是浮點(diǎn)型

Python數(shù)字類型轉(zhuǎn)換

int(x [,base ])         將x轉(zhuǎn)換為一個整數(shù)  
long(x [,base ])        將x轉(zhuǎn)換為一個長整數(shù)  
float(x )               將x轉(zhuǎn)換到一個浮點(diǎn)數(shù)  
complex(real [,imag ])  創(chuàng)建一個復(fù)數(shù)  
str(x )                 將對象 x 轉(zhuǎn)換為字符串  
repr(x )                將對象 x 轉(zhuǎn)換為表達(dá)式字符串  
eval(str )              用來計(jì)算在字符串中的有效Python表達(dá)式,并返回一個對象  
tuple(s )               將序列 s 轉(zhuǎn)換為一個元組  
list(s )                將序列 s 轉(zhuǎn)換為一個列表  
chr(x )                 將一個整數(shù)轉(zhuǎn)換為一個字符  
unichr(x )              將一個整數(shù)轉(zhuǎn)換為Unicode字符  
ord(x )                 將一個字符轉(zhuǎn)換為它的整數(shù)值  
hex(x )                 將一個整數(shù)轉(zhuǎn)換為一個十六進(jìn)制字符串  
oct(x )                 將一個整數(shù)轉(zhuǎn)換為一個八進(jìn)制字符串 


Python math 模塊、cmath 模塊

Python 中數(shù)學(xué)運(yùn)算常用的函數(shù)基本都在 ?math ?模塊、?cmath? 模塊中。

Python ?math ?模塊提供了許多對浮點(diǎn)數(shù)的數(shù)學(xué)運(yùn)算函數(shù)。

Python ?cmath ?模塊包含了一些用于復(fù)數(shù)運(yùn)算的函數(shù)。

?cmath ?模塊的函數(shù)跟 ?math ?模塊函數(shù)基本一致,區(qū)別是 ?cmath ?模塊支持復(fù)數(shù)運(yùn)算,?math ?模塊僅支持普通的數(shù)學(xué)運(yùn)算。

要使用 ?math ?或 ?cmath ?函數(shù)必須先導(dǎo)入:

import math

查看 ?math ?包中的內(nèi)容:

>>> 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']
>>>

下文會介紹各個函數(shù)的具體應(yīng)用。

查看 ?cmath ?包中的內(nèi)容:

>>> 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']
>>>

實(shí)例:

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

Python數(shù)學(xué)函數(shù)

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


Python隨機(jī)數(shù)函數(shù)

隨機(jī)數(shù)可以用于數(shù)學(xué),游戲,安全等領(lǐng)域中,還經(jīng)常被嵌入到算法中,用以提高算法效率,并提高程序的安全性。

Python 包含以下常用隨機(jī)數(shù)函數(shù):

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


Python三角函數(shù)

Python 包括以下三角函數(shù):

函數(shù) 描述
acos(x) 返回 x 的反余弦弧度值。
asin(x) 返回 x 的反正弦弧度值。
atan(x) 返回 x 的反正切弧度值。
atan2(y, x) 返回給定的 X 及 Y 坐標(biāo)值的反正切值。
cos(x) 返回 x 的弧度的余弦值。
hypot(x, y) 返回歐幾里德范數(shù) sqrt(x*x + y*y)。
sin(x) 返回的 x 弧度的正弦值。
tan(x) 返回 x 弧度的正切值。
degrees(x) 將弧度轉(zhuǎn)換為角度,如 degrees(math.pi/2) , 返回 90.0
radians(x) 將角度轉(zhuǎn)換為弧度


Python數(shù)學(xué)常量

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


以上內(nèi)容是否對您有幫助:
在線筆記
App下載
App下載

掃描二維碼

下載編程獅App

公眾號
微信公眾號

編程獅公眾號