5.4.10 三角函数
三角函数将三角形中的角与其边长相关联。在有周期性质的公式中经常出现三角函数如谐波或圆周运动,在处理角时也会经常用到三角函数。标准库中所有三角函数的角参数都被表示为弧度。
给定一个直角三角形中的角,其正弦是对边长度与斜边长度之比(sinA=对边/斜边)。余弦是邻边长度与斜边长度之比(cosA=邻边/斜边)。正切对边与邻边之比(tanA=对边/邻边)。

import mathprint('{:^7} {:^7} {:^7} {:^7} {:^7}'.format('Degrees','Radians','Sine','Cosine','Tangent'))
print('{:-^7} {:-^7} {:-^7} {:-^7} {:-^7}'.format('-','-','-','-','-',))fmt = '{:7.2f} {:7.2f} {:7.2f} {:7.2f} {:7.2f}'for deg in range(0,361,30):rad = math.radians(deg)if deg in (90,270):t = float('inf')else:t = math.tan(rad)print(fmt.format(deg,rad,math.sin(rad),math.cos(rad),t))

正切也可以被定义为角的正弦值预期余弦值之比,因为弧度π/2和3π/2的余弦是0,所以相应的正切值为无穷大。
运行结果:

给定一个点(x,y),点[{0,0},(x,0),(x,y)]构成三角形中斜边长度未(x2 + y2)** 1/2,可以用hypot()来计算。

import mathprint('{:^7} {:^7} {:^10}'.format('X','Y','Hypotenuse'))
print('{:-^7} {:-^7} {:-^10}'.format('','',''))POINTS = [(1,1),(-1,-1),(math.sqrt(2),math.sqrt(2)),(3,4), # 3-4-5 triangle# On the circle(math.sqrt(2) / 2 ,math.sqrt(2) / 2), # pi/4 rads(0.5,math.sqrt(3) / 2), # pi/3 rads]for x,y in POINTS:h = math.hypot(x,y)print('{:7.2f} {:7.2f} {:7.2f}'.format(x,y,h))

对于圆上的点,其斜边总是等于1。
运行结果:

还可以用这个函数查看两个点之间的距离。

import mathprint('{:^8} {:^8} {:^8} {:^8} {:^8}'.format('X1','Y1','X2','Y2','Distance',))
print('{:-^8} {:-^8} {:-^8} {:-^8} {:-^8}'.format('','','','','',))POINTS = [((5,5),(6,6)),((-6,-6),(-5,-5)),((0,0),(3,4)),  # 3-4-5 triangle((-1,-1),(2,3)),  # 3-4-5 triangle]for (x1,y1),(x2,y2) in POINTS:x = x1 - x2y = y1 - y2h = math.hypot(x,y)print('{:8.2f} {:8.2f} {:8.2f} {:8.2f} {:8.2f}'.format(x1,y1,x2,y2,h,))

使用x值之差和y值之差将一个端点移至原点,然后将结果传入hypot()。
运行结果:

math还定义了反三角函数。

import mathfor r in [0,0.5,1]:print('arcsine({:1f})    = {:5.2f}'.format(r,math.asin(r)))print('arccosine({:1f})  = {:5.2f}'.format(r,math.acos(r)))print('arctangent({:1f}) = {:5.2f}'.format(r,math.atan(r)))print()

1.57大约等于π/2,或90度,这个角的正弦为1,余弦为0。
运行结果:

第五章:数学运算-math:数学函数-三角函数相关推荐

  1. 捋一捋Python中的数学运算math库(上篇)

    正式的Python专栏第18篇,同学站住,别错过这个从0开始的文章! 很多学习编程的都多多少少学习了一些数学知识. 学委之前也简单吐槽了 Python中奇葩的round函数! 这篇我们讲讲那些常用的数 ...

  2. 第五章模糊查询和聚合函数

    第五章模糊查询和聚合函数 一.模糊查询: 1.关键词:like 2._代表:一个字符,eg:like 'c',查询的结果是三个字,中间必须是c 3.%代表:多个字符,eg:like '%张',查询的结 ...

  3. java中math类方法之数学运算(pow,exp,三角函数,指数)

    Math中定义了许多的方法,通过Math类就能直接调用,均为static类型. 1. 调用形式:Math.方法名 2.三角函数方法: static double  sin(double a ) : 返 ...

  4. 凸优化第五章对偶 5.1Lagrange对偶函数

    5.1Lagrange对偶函数 Lagrange Lagrange对偶函数 最优值的下界 例子 Lagrange对偶函数和共轭函数 Lagrange 标准形式的优化问题: 其中,问题的定义域,注意这里 ...

  5. Hive常用运算(关系运算)、逻辑运算与数学运算、数值运算、日期函数、条件函数、字符串函数

    hive 常用运算 第一部分:关系运算 Hive支持的关系运算符 •常见的关系运算符 •等值比较: = •不等值比较: <> •小于比较: < •小于等于比较: <= •大于比 ...

  6. MaxCompute SQL函数详解 ODPS SQL函数详解---之常用数学运算相关函数

    MaxCompute SQL函数详解 ODPS SQL函数详解---之常用数学运算相关函数 MaxCompute/ODPS SQL常用数学运算相关函数 ABS函数-计算绝对值 sql:select A ...

  7. 工程数学 计算方法 第五章 数值积分

    工程数学 计算方法 第五章 数值积分 数值积分 数值微分 微分 差商法 原理 误差分析 优化:变步长算法 插值法 数值积分 机械求积公式 插值型数值积分 代数精度⭐ 节点等距分布 复合求积 复合求积基 ...

  8. Numpy数组常用函数汇总(数学运算、三角函数、位运算、比较运算及其它)

    一.数学运算 函数名 description 说明 add(x1, x2, [, out, where, casting, order, -]) Add arguments element-wise. ...

  9. matlab vdp1000,第四章 MATLAB的数学运算.ppt

    第四章MATLAB的数学运算要点 第四章 MATLAB的数学运算 MATLAB可以进行很多的数学运算, 如:多项式.线性插值.傅里叶变换和微分 方程等. 教学内容 多项式与插值 函数运算 微分方程 应 ...

最新文章

  1. 测试员薪资两极分化,如何成为月薪20K的自动化测试?
  2. mysql python 接口_Python中的MySQL接口:PyMySQL MySQLdb
  3. Power Strings_JAVA
  4. 在word中粘贴代码保持高亮
  5. 什么是量子计算-超级简单的给你个解释
  6. 【推荐】新冠肺炎的最新数据集和可视化和预测分析(附代码)
  7. 104. Maximum Depth of Binary Tree 二叉树的最大深度
  8. linux c 符号表,C中的符号表
  9. Mac下安装event库
  10. 博士生的deadline血泪史,这是一份来自Nature的避坑指南
  11. 微信开发2之php网页授权登录
  12. CMake 添加头文件目录,链接动态、静态库(添加子文件夹)
  13. mysql in过大_项目中常用的 19 条 MySQL 优化
  14. BZOJ 1011: [HNOI2008]遥远的行星( )
  15. Spark2.1.0之初体验
  16. offer来了java面试百度云版,精心整理
  17. 基于Dav快速搭建React开发框架
  18. HTML5七夕情人节表白网页制作 (蓝色主题-樱花雨3D相册)HTML+CSS+JavaScript
  19. 1、SONIX单片机新建工程与烧录流程
  20. 远程办公软件合集 总结好用的10款远程办公工具

热门文章

  1. 一个数据分析师的自我修养
  2. Redis 下载与安装(Windows版)(*)
  3. 1162:字符串逆序
  4. Jenkins(10) 配置邮件通知
  5. 关于金山软件杀毒软件卸载后Kingsoft大文件无法删除的问题
  6. 如何用python画雪人_pygame画雪人_函数与图形示例.py
  7. 酒店工作者学Java逆袭薪资从6k涨到14k
  8. 周鸿祎:成功是熬出来的,像阿甘坚持到最后一分钟
  9. 【Node.js】初学
  10. 空间分析:1-3.爬取北京房价数据