对python中 math模块下 atan 和 atan2的区别详解

对python中 math模块下 atan 和 atan2的区别详解,第1张

概述对python中 math模块下 atan 和 atan2的区别详解 atan 和 atan2 都是反正切函数,返回的都是弧度 对于两点形成的直线,两点分别是 point(x1,y1) 和 point(x2,y2),其斜率对应角度的计算方法可以是: angle = atan( (y2-y1)/(x2-x1) ) 或 angle = atan2( y2-y1, x2-x1 ) 因此可以看出 atan 和 atan2 的区别: 1.参数的个数不同:atan 为单个参数,atan2为两个参数 2.atan2 的优点在于: 如果 x2-x1等于0 ,角度依然可以计算,但是

atan 和 atan2 都是反正切函数,返回的都是弧度

对于两点形成的直线,两点分别是 point(x1,y1) 和 point(x2,y2),其斜率对应角度的计算方法可以是:

angle = atan( (y2-y1)/(x2-x1) )

angle = atan2( y2-y1,x2-x1 )

因此可以看出 atan 和 atan2 的区别:

1、参数的个数不同;atan 为单个参数,atan2为两个参数

2、atan2 的优点在于: 如果 x2-x1等于0 ,角度依然可以计算,但是atan函数则需要提前判断,否则就会导致程序出错;

结论: atan 和 atan2函数,建议用 atan2函数;

注意:1、两者返回值都是弧度;2、atan2函数参数是y在前,x在后;3、需要先导入math库

下面再根据几个实例来看一下它们的用法和区别:

import matha=math.atan(1)b=math.atan2(1,1)print(a,b)>> 0.7853981633974483 0.7853981633974483#垂直时b=math.atan2(1,0)print(b)>> 1.5707963267948966#弧度转角度b=math.atan2(1,0)print(b/math.pi*180)>> 90.0

以上这篇对python中 math模块下 atan 和 atan2的区别详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持我们。

总结

以上是内存溢出为你收集整理的对python中 math模块下 atan 和 atan2的区别详解全部内容,希望文章能够帮你解决对python中 math模块下 atan 和 atan2的区别详解所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/langs/1199383.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-06-04
下一篇 2022-06-04

发表评论

登录后才能评论

评论列表(0条)

保存