Python/數值

維基教科書,自由的教學讀本

Python 3.x 支持三種不同的數值類型:

  • 整型(int) - Python 3 去除了 Python 2.x 中的 long 類型,整型不再限制大小。在 Python 2 中,整型的上限為 C 語言中的 LONG_MAX,約為 9.22 × 1018
  • 浮點型(float) - 對應 C 語言中的 double 類型。可以用科學計數法表示,如 2e5 表示 200000.0
  • 複數(complex) - 由實部和虛部構成,可以用 a + bjcomplex(a, b) 表示,其中實部 a 和虛部 b 都是浮點型。實際上Python僅需要支持虛數。

可以使用十六進制、八進制、二進制來代表整數。分別是 0x 前綴與 0o 前綴(第二個字符為字母 o)、0b 前綴。前綴字母使用大寫也可。

數字之間可以用單個下劃線分開,以增加可讀性。

類型強制轉換函數有 int()float()complex()

數學函數:

函數名 返回結果的描述
abs(x) 絕對值
math.ceil 上取整
cmp(x, y) Python 3廢除
math.exp(x) e的x次冪
math.fabs 絕對值
math.floor 下取整
math.log 自然對數或者指定基的對數
math.log10 以10為基的對數
max(x1, x2,...) 最大值,參數可以為序列
min(x1, x2,...) 最小值,參數可以為序列
math.modf(x) 返回x的整數部分與小數部分,兩部分的數值符號與x相同,整數部分以浮點型表示。
math.pow(x, y) x**y
round(x [,n]) 四捨六入五看齊,奇進偶不進。如果保留位數的後一位如果是5,且該位數後沒有數字。要根據保留位數的那一位決定是捨去還是進入:如果是奇數則進入,如果是偶數則捨去。例如5.215保留兩位小數為5.22,5.225保留兩位小數為5.22。如果保留位數的後一位如果是5,且該位數後有數字。則進上去。如給出n值,則代表捨入到小數點後的位數
math.sqrt(x) 平方根

隨機數生成函數:

函數名 返回值的描述
random.choice 從序列的元素中隨機挑選一個元素
random.randint(x,y) 從指定範圍內,隨機生一個整數
random.randrange([start,] stop [,step]) 從指定範圍內,按指定基數遞增的集合中獲取一個隨機數,基數缺省值為1
random.random() [0,1)範圍內隨機生成下一個實數
random.sample(sequence,length) 從指定的序列中,隨機的截取指定長度的片斷,不修改原序列
random.seed([x]) 改變隨機數生成器的種子seed。如果你不了解其原理,你不必特別去設定seed,Python會幫你選擇seed
random.shuffle(lst) 將序列的所有元素隨機排序
random.uniform(x, y) 在[x,y]範圍內隨機生成下一個實數

三角函數:

函數 返回值的描述
acos(x) 反餘弦弧度值
asin(x) 反正弦弧度值
atan(x) 反正切弧度值
atan2(y, x) 給定的 xy 坐標值的反正切值
cos(x) 餘弦值
hypot(x, y) 歐幾里德範數 sqrt(x*x + y*y)
sin(x) 正弦值
tan(x) 正切值
degrees(x) 弧度轉換為角度
radians(x) 角度轉換為弧度

數學常量:pie