I wrote this in Tkinter for you, in case you don't know Tkinter, it is a built-in module for most python versions.
10余年的迎澤網(wǎng)站建設(shè)經(jīng)驗,針對設(shè)計、前端、開發(fā)、售后、文案、推廣等六對一服務(wù),響應(yīng)快,48小時及時工作處理。營銷型網(wǎng)站建設(shè)的優(yōu)勢是能夠根據(jù)用戶設(shè)備顯示端的尺寸不同,自動調(diào)整迎澤建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計,從而大程度地提升瀏覽體驗。成都創(chuàng)新互聯(lián)從事“迎澤網(wǎng)站設(shè)計”,“迎澤網(wǎng)站推廣”以來,每個客戶項目都認真落實執(zhí)行。
If you want a commandline version, you can ask me, but tell you what, since those values are all
float numbers, so it's hard to get a precise graph in commandline window.
Well, in this version, I enlarged each element's position by 40 and then change them to integer, guess this is an endurable loss of precision.
#
from?math?import?radians
from?math?import?sin
from?Tkinter?import?*
pos?=?[]
xPos?=?0
centerX?=?0
centerY?=?0
for?deg?in?range(-360,?361,?10):
pos.append([xPos,?int(40*(sin(radians(deg))))])?#1000?too?big?for?my?screen
xPos+=1
if?deg?==?0:
centerX?=?xPos-1
centerY?=?pos[-1][1]
root?=?Tk()
root.title('trianble?graph?from?-180?to?180')
width,?height?=?550,?450
mHei?=?height/2
mWid?=?width/2
canvas?=?Canvas(root,?width=width,?height=height)
canvas.create_line(0,?mHei,?width,?mHei)???#x?axis
canvas.create_line(mWid,?0,?mWid,?height)??#y?axis
xStep?=?(width-150)/len(pos)
yStep?=?(height-150)/len(pos)
radius?=?3
#?the?middle?point?(sin(0)?is?first?drawn?and?used?as?position?reference?for?all
canvas.create_oval(mWid-radius,?mHei-radius,?mWid+radius,?mHei+radius,?fill='green')
print?pos
print?xStep,?yStep,?centerX,?centerY
#exit(0)
for?i?in?pos:
if?i[0]?==?centerX:?#center?processed?already.
continue
x?=?mWid?+?xStep*(i[0]-centerX)
#?y?is?smaller,?the?bigger?the?value,?so?use?minus
y?=?mHei?-?yStep*(i[1]-centerY)
canvas.create_oval(x-radius,?y-radius,?x+radius,?y+radius,?fill='green')
canvas.pack()
root.mainloop()
[1]
[1, 1]
[1, 2, 1]
[1, 3, 3, 1]
[1, 4, 6, 4, 1]
[1, 5, 10, 10, 5, 1]
執(zhí)行你那個生成器,并生成6行楊輝三角的數(shù)據(jù)
經(jīng)過觀察你就會發(fā)現(xiàn)這個列表推導(dǎo)式[L[i-1] + L[i] for i in range(len(L))]是產(chǎn)生每一行的楊輝三角數(shù)據(jù)的。
L[i-1]+L[i]是根據(jù)前一行指定索引位置的楊輝三角數(shù)據(jù),產(chǎn)生新的一行的數(shù)據(jù)
這篇文章主要介紹了Python中計算三角函數(shù)之cos()方法的使用簡介,是Python入門的基礎(chǔ)知識,需要的朋友可以參考下
cos()方法返回x弧度的余弦值。
語法
以下是cos()方法的語法:
cos(x)
注意:此函數(shù)是無法直接訪問的,所以我們需要導(dǎo)入math模塊,然后需要用math的靜態(tài)對象來調(diào)用這個函數(shù)。
參數(shù)
x
--
這必須是一個數(shù)值
返回值
此方法返回-1
到
1之間的數(shù)值,它表示角度的余弦值
例子
下面的例子展示cos()方法的使用
?
1
2
3
4
5
6
7
8#!/usr/bin/python
import
math
"cos(3)
:
",
math.cos(3)
"cos(-3)
:
",
math.cos(-3)
"cos(0)
:
",
math.cos(0)
"cos(math.pi)
:
",
math.cos(math.pi)
"cos(2*math.pi)
:
",
math.cos(2*math.pi)
當(dāng)我們運行上面的程序,它會產(chǎn)生以下結(jié)果:
?
1
2
3
4
5cos(3)
:
-0.9899924966
cos(-3)
:
-0.9899924966
cos(0)
:
1.0
cos(math.pi)
:
-1.0
cos(2*math.pi)
:
1.0
[1]
[1,
1]
[1,
2,
1]
[1,
3,
3,
1]
[1,
4,
6,
4,
1]
[1,
5,
10,
10,
5,
1]
執(zhí)行你那個生成器,并生成6行楊輝三角的數(shù)據(jù)
經(jīng)過觀察你就會發(fā)現(xiàn)這個列表推導(dǎo)式[l[i-1]
+
l[i]
for
i
in
range(len(l))]是產(chǎn)生每一行的楊輝三角數(shù)據(jù)的。
l[i-1]+l[i]是根據(jù)前一行指定索引位置的楊輝三角數(shù)據(jù),產(chǎn)生新的一行的數(shù)據(jù)
Python編碼下面的三角函數(shù)包括以下種類:
12345678910
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ù)之a(chǎn)sin()方法的使用(其它只需替換上述方法即可),返回x的反正弦,以弧度表示,代碼如下:
12345678910111213
#!/usr/bin/python import math print "asin(0.64) : ", math.asin(0.64) print "asin(0) : ", math.asin(0) print "asin(-1) : ", math.asin(-1) print "asin(1) : ", math.asin(1) #運行結(jié)果如下:asin(0.64) : 0.694498265627asin(0) : 0.0asin(-1) : -1.57079632679asin(1) : 1.57079632679
Python編碼下面的三角函數(shù)包括以下種類:acos(x)//返回x的反余弦弧度值。asin(x)//返回x的反正弦弧度值。atan(x)//返回x的反正切弧度值。atan2(y,x)//返回給定的X及Y坐標(biāo)值的反正切值。cos(x)//返回x的弧度的余弦值。hypot(x,y
描述
sin()返回的x弧度的正弦值。
語法
以下是sin()方法的語法:
importmath
math.sin(x)
注意:sin()是不能直接訪問的,需要導(dǎo)入math模塊,然后通過math靜態(tài)對象調(diào)用該方法。
參數(shù)
x--一個數(shù)值。
返回值
返回的x弧度的正弦值,數(shù)值在-1到1之間。
實例
以下展示了使用sin()方法的實例:
#!/usr/bin/python
import math
print "sin(3) : ", math.sin(3)
print "sin(-3) : ", math.sin(-3)
print "sin(0) : ", math.sin(0)
print "sin(math.pi) : ", math.sin(math.pi)
print "sin(math.pi/2) : ", math.sin(math.pi/2)
以上實例運行后輸出結(jié)果為:
sin(3) : 0.14112000806
sin(-3) : -0.14112000806
sin(0) : 0.0
sin(math.pi) : 1.22460635382e-16
sin(math.pi/2) : 1
總結(jié)
以上就是本文關(guān)于Python入門之三角函數(shù)sin()函數(shù)實例詳解的全部內(nèi)容,希望對大家有所幫助。感興趣的朋友可以繼續(xù)參閱本站:python正則表達式re之compile函數(shù)解析、Python中enumerate函數(shù)代碼解析、簡單了解Python中的幾種函數(shù)等,有什么問題可以隨時留言,小編會及時回復(fù)大家的。感謝朋友們對本站的支持!