Python math 庫提供許多對浮點數的數學運算函數,math模塊不支持復數運算,若需計算復數,可使用cmath模塊(本文不贅述)。
創(chuàng)新互聯專注為客戶提供全方位的互聯網綜合服務,包含不限于成都網站設計、成都網站制作、外貿網站建設、錯那網絡推廣、微信小程序、錯那網絡營銷、錯那企業(yè)策劃、錯那品牌公關、搜索引擎seo、人物專訪、企業(yè)宣傳片、企業(yè)代運營等,從售前售中售后,我們都將竭誠為您服務,您的肯定,是我們最大的嘉獎;創(chuàng)新互聯為所有大學生創(chuàng)業(yè)者提供錯那建站搭建服務,24小時服務熱線:18982081108,官方網址:www.cdcxhl.com
使用dir函數,查看math庫中包含的所有內容:
1) math.pi????# 圓周率π
2) math.e????#自然對數底數
3) math.inf? ? #正無窮大∞,-math.inf? ? #負無窮大-∞
4) math.nan? ? #非浮點數標記,NaN(not a number)
1) math.fabs(x)? ? #表示X值的絕對值
2) math.fmod(x,y)? ? #表示x/y的余數,結果為浮點數
3) math.fsum([x,y,z])? ? #對括號內每個元素求和,其值為浮點數
4) math.ceil(x)? ? #向上取整,返回不小于x的最小整數
5)math.floor(x)? ? #向下取整,返回不大于x的最大整數
6) math.factorial(x)? ? #表示X的階乘,其中X值必須為整型,否則報錯
7) math.gcd(a,b)? ? #表示a,b的最大公約數
8)? math.frexp(x)? ? ? #x = i *2^j,返回(i,j)
9) math.ldexp(x,i)? ? #返回x*2^i的運算值,為math.frexp(x)函數的反運算
10) math.modf(x)? ? #表示x的小數和整數部分
11) math.trunc(x)? ? #表示x值的整數部分
12) math.copysign(x,y)? ? #表示用數值y的正負號,替換x值的正負號
13) math.isclose(a,b,rel_tol =x,abs_tol = y)? ? #表示a,b的相似性,真值返回True,否則False;rel_tol是相對公差:表示a,b之間允許的最大差值,abs_tol是最小絕對公差,對比較接近于0有用,abs_tol必須至少為0。
14) math.isfinite(x)? ? #表示當x不為無窮大時,返回True,否則返回False
15) math.isinf(x)? ? #當x為±∞時,返回True,否則返回False
16) math.isnan(x)? ? #當x是NaN,返回True,否則返回False
1) math.pow(x,y)? ? #表示x的y次冪
2) math.exp(x)? ? #表示e的x次冪
3) math.expm1(x)? ? #表示e的x次冪減1
4) math.sqrt(x)? ? #表示x的平方根
5) math.log(x,base)? ? #表示x的對數值,僅輸入x值時,表示ln(x)函數
6) math.log1p(x)? ? #表示1+x的自然對數值
7) math.log2(x)? ? #表示以2為底的x對數值
8) math.log10(x)? ? #表示以10為底的x的對數值
1) math.degrees(x)? ? #表示弧度值轉角度值
2) math.radians(x)? ? #表示角度值轉弧度值
3) math.hypot(x,y)? ? #表示(x,y)坐標到原點(0,0)的距離
4) math.sin(x)? ? #表示x的正弦函數值
5) math.cos(x)? ? #表示x的余弦函數值
6) math.tan(x)? ? #表示x的正切函數值
7)math.asin(x)? ? #表示x的反正弦函數值
8)?math.acos(x)? ? #表示x的反余弦函數值
9)?math.atan(x)? ? #表示x的反正切函數值
10) math.atan2(y,x)? ? #表示y/x的反正切函數值
11) math.sinh(x)? ? #表示x的雙曲正弦函數值
12) math.cosh(x)? ? #表示x的雙曲余弦函數值
13) math.tanh(x)? ? #表示x的雙曲正切函數值
14) math.asinh(x)? ? #表示x的反雙曲正弦函數值
15) math.acosh(x)? ? #表示x的反雙曲余弦函數值
16) math.atanh(x)? ? #表示x的反雙曲正切函數值
1)math.erf(x)? ? #高斯誤差函數
2) math.erfc(x)? ? #余補高斯誤差函數
3) math.gamma(x)? ? #伽馬函數(歐拉第二積分函數)
4) math.lgamma(x)? ? #伽馬函數的自然對數
畫函數堆棧用Python工具站
Python由荷蘭數學和計算機科學研究學會的吉多·范羅蘇姆 于1990 年代初設計,作為一門叫做ABC語言的替代品。 Python提供了高效的高級數據結構,還能簡單有效地面向對象編程。Python語法和動態(tài)類型,以及解釋型語言的本質,使它成為多數平臺上寫腳本和快速開發(fā)應用的編程語言,隨著版本的不斷更新和語言新功能的添加,逐漸被用于獨立的、大型項目的開發(fā)。
Python解釋器易于擴展,可以使用C語言或C++(或者其他可以通過C調用的語言)擴展新的功能和數據類型。Python 也可用于可定制化軟件中的擴展程序語言。Python豐富的標準庫,提供了適用于各個主要系統(tǒng)平臺的源碼或機器碼。
用python怎樣畫出如題所示的正余弦函數圖像? 如此編寫代碼,使其中兩個軸、圖例、刻度,大小,LaTex公式等要素與原圖一致,需要用到的代碼如下,沒有縮進:
#-*-codeing:utf-8;-*-
from matplotlib import pyplot as plt
import numpy as np
a=np.linspace(0,360,980)
b=np.sin(a/180*np.pi)
c=np.cos(a/180*np.pi)
fig = plt.figure()
ax = fig.add_subplot(111)
ax.set_xlim([0, 360])
ax.plot(a,b,label=r"$y=\sin(\theta)$")
ax.plot(a,c,label=r"$y=\cos(\theta)$")
ax.grid(True)
ax.set_ylabel(r"$y$")
ax.set_xlabel(r"$\theta$")
plt.xticks(np.arange(0,360+1,45))
plt.title("Sine Cosine Waves")
plt.legend()
plt.savefig("SinCosWaveDegFont.jpg")
plt.show()
代碼運行show的窗口圖
代碼的截圖
代碼輸出的文件的圖
不寫出y=f(x)這樣的表達式,由隱函數的等式直接繪制圖像,以x2+y2+xy=1的圖像為例,使用sympy間接調用matplotlib工具的代碼和該二次曲線圖像如下(注意python里的乘冪符號是**而不是^,還有,python的sympy工具箱的等式不是a==b,而是a-b或者Eq(a,b),這幾點和matlab的區(qū)別很大)
直接在命令提示行的里面運行代碼的效果
from sympy import *;
x,y=symbols('x y');
plotting.plot_implicit(x**2+y**2+x*y-1);
使用python的matplotlib畫正弦函數圖像,還要用到numpy庫,代碼如下9行所示:
import numpy as np;
from matplotlib import pyplot as plt;
fig = plt.figure();
ax2= fig.add_subplot(111);
x=np.arange(0,100)/10;
y=np.sin(x);
ax2.plot(x,y);
plt.savefig('sine.png');
plt.show();