對python中 math模塊下 atan 和 atan2的區(qū)別詳解
atan 和 atan2 都是反正切函數(shù),返回的都是弧度
對于兩點(diǎn)形成的直線,兩點(diǎn)分別是 point(x1,y1) 和 point(x2,y2),其斜率對應(yīng)角度的計(jì)算方法可以是:
angle = atan( (y2-y1)/(x2-x1) )
或
angle = atan2( y2-y1, x2-x1 )
因此可以看出 atan 和 atan2 的區(qū)別:
1、參數(shù)的個(gè)數(shù)不同;atan 為單個(gè)參數(shù),atan2為兩個(gè)參數(shù)
2、atan2 的優(yōu)點(diǎn)在于: 如果 x2-x1等于0 ,角度依然可以計(jì)算,但是atan函數(shù)則需要提前判斷,否則就會導(dǎo)致程序出錯(cuò);
結(jié)論: atan 和 atan2函數(shù),建議用 atan2函數(shù);
注意:1、兩者返回值都是弧度;2、atan2函數(shù)參數(shù)是y在前,x在后;3、需要先導(dǎo)入math庫
下面再根據(jù)幾個(gè)實(shí)例來看一下它們的用法和區(qū)別:
import math a=math.atan(1) b=math.atan2(1,1) print(a,b) >> 0.7853981633974483 0.7853981633974483 #垂直時(shí) b=math.atan2(1,0) print(b) >> 1.5707963267948966 #弧度轉(zhuǎn)角度 b=math.atan2(1,0) print(b/math.pi*180) >> 90.0
以上這篇對python中 math模塊下 atan 和 atan2的區(qū)別詳解就是小編分享給大家的全部內(nèi)容了,希望能給大家一個(gè)參考,也希望大家多多支持腳本之家。
相關(guān)文章
pytorch中dataloader 的sampler 參數(shù)詳解
這篇文章主要介紹了pytorch中dataloader 的sampler 參數(shù)詳解,文章圍繞主題展開詳細(xì)的內(nèi)容介紹,具有一定的參考價(jià)值,感興趣的小伙伴可以參考一下2022-09-09
Moviepy模塊實(shí)現(xiàn)視頻添加圖片水印
本文主要介紹了Moviepy模塊實(shí)現(xiàn)視頻添加圖片水印,文中通過示例代碼介紹的非常詳細(xì),對大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來一起學(xué)習(xí)學(xué)習(xí)吧2023-04-04
通過Python實(shí)現(xiàn)猜燈謎游戲的示例代碼
新的一年迎來了元宵節(jié),元宵佳節(jié)在陪伴家人的同時(shí),自然也少不了賞花燈,猜燈謎的項(xiàng)目。本文會通過Python實(shí)現(xiàn)這一游戲,需要的可以參考一下2022-02-02
Python異常處理try語句應(yīng)用技巧實(shí)例探究
異常處理在Python中是至關(guān)重要的,try-except是用于捕獲和處理異常的核心機(jī)制之一,本文就帶大家深入了解如何使用try-except,處理各種異常情況2024-01-01
django 實(shí)現(xiàn)編寫控制登錄和訪問權(quán)限控制的中間件方法
今天小編就為大家分享一篇django 實(shí)現(xiàn)編寫控制登錄和訪問權(quán)限控制的中間件方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2019-01-01

