由于最近經常使用到Python中random,math和time``datetime模塊, 所以決定花時間系統的學習一下
1. math模塊
math中的函數不可以用于太過復雜的數的運算, 如果需要復雜數的運行最好使用cmath模塊中同名函數, 如果想要更加高級的數學功能,可以考慮選擇標準庫之外的numpy和scipy模塊,它們不但支持數組和矩陣運算,還有豐富的數學和物理方程可供使用
1.1. 數學常量
math.pi 這個數學常量等于 3.141592...
math.e 這個數學常量 e = 2.718281...,
1.2. 常用簡單函數
math.ceil(x) : 對x向上取整,返回最小整數值大于或者等于x
代碼如下:
# -*- coding:utf-8 -*-
import math #僅在第一次聲明, 以下都將省略
print math.ceil(math.pi) #math.pi是圓周率pi, 類似于C/C++中的宏
//輸出4
math.floor(x) : 對x向下取整, 返回整數值小于或者等于x
代碼如下:
>>> import math
>>> math.floor(math.pi)
3.0
math.pow(x,y) : 指數運算,得到x的y次方
代碼如下:
>>> math.pow(2, 3)
8.0
math.log(x[, base]) : 對數運算,默認基底為e的對數運算。使用base參數時,改變對數的基底, 變為以base為底的對數運算
代碼如下:
>>> math.log(10)
2.302585092994046
>>> math.log(8, 2) #log(x)/log(base).
3.0
math.sqrt(x) 平方根計算
代碼如下:
>>> math.sqrt(4)
2.0
math.fabs(x) 取絕對值
math.factorial(x) 求階乘, 即x!
math.exp(x) 求e的x次方
1.3. 三角函數
以下函數都接收一個弧度(radian)為單位的x作為參數
代碼如下:
math.acos(x) #求arccos(x)
math.asin(x) #求arcsin(x)
math.atan(x) #求arctan(x)
math.cos(x) #求cos(x)
math.sin(x) #求sin(x)
math.tan(x) #求tan(x)
math.degrees(x) 角度制轉化為弧度制
math.radians(x) 弧度制轉化為角度制
代碼如下:
>>> math.degrees(math.pi / 2)
90.0
1.5. 雙曲函數和特殊函數
math.sinh(x), math.cosh(x), math.tanh(x), math.asinh(x), math.acosh(x), math.atanh(x)
還有些函數基本沒用過
2. random模塊
random模塊的作用是產生隨機數, 這個模塊實現了偽隨機數產生器
1.1. 常用函數
random.seed([x]) 用戶初始化一個隨機數種子, 可選參數可以是任何hashtable對象,默認使用系統時間
random.randint(a, b) 返回一個a到b之間的整數
random.randrange([start], stop[, step]) 從指定范圍內,按指定基數遞增的集合中 獲取一個隨機數。如:random.randrange(10, 100, 2),結果相當于從[10, 12, 14, 16, … 96, 98]序列中獲取一個隨機數。random.randrange(10, 100, 2)在結果上與 random.choice(range(10, 100, 2) 等效。
新聞熱點
疑難解答