19 Python的math模块

2023-09-21 05:00:00

概述

        在上一节,我们介绍了Python的sys模块,包括:sys模块中一些常用的属性和函数。在这一节,我们将介绍Python的math模块。math模块提供了许多数学函数和常量,可以用于进行各种数学运算和常数表示。math模块中的常量和函数主要分为以下几类:

        常量:包括math.pi、math.e等,用于表示圆周率π和自然常数e等常量。

        算术函数:包括abs(x)、floor(x)、ceil(x)等,用于进行取整、取模等运算。

        幂函数和对数函数:包括pow(x,y)、math.exp(x)、math.log(x)等,用于进行乘方、指数、对数等运算。

        三角函数:包括sin(x)、cos(x)、tan(x)等,用于进行正弦、余弦、正切等三角函数运算,x的单位是弧度。

        角度转换函数:包括math.radians(x)、math.degrees(x)等,用于进行角度和弧度的转换。

        双曲函数:包括math.cosh(x)、math.sinh(x)等,用于进行双曲函数的运算。

        特殊函数:包括math.sqrt(x)、math.fmod(x,y)等,用于进行开方、取余等运算。

        下面,我们将逐一介绍math模块中一些常用的属性和函数。

常量

        math模块提供了一些常用的数学常量,包括:

        math.pi:表示圆周率π,值为3.14159265358979323846。

        math.e:表示自然常数e,值为2.71828182845904523536。

        math.inf:表示正无穷大,可以用于表示一些无穷大的数值。

        math.nan:表示不是一个数字(NaN),可以用于表示一些无法表示的数值,比如:0除以0的结果。

        math.tau:表示圆周率π的两倍,值为6.28318530717958647693。

import math

# 输出:3.141592653589793 2.718281828459045 inf nan 6.283185307179586
print(math.pi, math.e, math.inf, math.nan, math.tau)

算术函数

        math模块提供了许多算术函数,用于进行各种数学运算,包括:

        math.fabs(x):返回x的绝对值。

        math.floor(x):返回x的向下取整值,即不大于x的最大整数。

        math.ceil(x):返回x的向上取整值,即不小于x的最小整数。

        另外,Python还存在全局的abs()函数和round()函数。

        abs(x):返回x的绝对值。

        round(x[, n]):返回x的四舍五入值,如果指定了n,则返回x保留n位小数的四舍五入值。

import math

# 输出:66.0
print(math.fabs(-66))
# 输出:-3
print(math.floor(-2.3))
# 输出:10
print(math.ceil(9.4))

# 输出:66
print(abs(-66))
# 输出:9.64
print(round(9.637, 2))

幂函数和对数函数

        math模块提供了幂函数和对数函数的计算功能。幂函数是指计算底数的指数次幂的函数,可以使用math.pow(x, y)函数来实现,其中x是底数,y是指数,返回值为x的y次幂。对数函数是指计算以某个数为底数的指数函数的反函数,可以使用math.log(x[, base])函数来实现,其中x是待计算对数的数,base是底数(如果不指定则默认为自然对数),返回值为x的对数。常用函数的定义如下:

        math.pow(x, y):返回x的y次方。

        math.exp(x):返回e的x次方,e为自然常数。

        math.log(x[, base]):返回x的自然对数(以e为底),如果指定了base,则返回x的以base为底的对数。

        math.log10(x):返回x的以10为底的对数。

        math.log2(x):返回x的以2为底的对数。

        注意:在计算对数时需要指定底数,否则会报错;另外,对数的底数必须是正数,否则也会报错。

import math

# 输出:125.0
print(math.pow(5, 3))
# 输出:7.38905609893065
print(math.exp(2))
# 输出:2.0
print(math.log(36, 6))
# 输出:3.0
print(math.log10(1000))
# 输出:10.0
print(math.log2(1024))

三角函数

        math模块提供了多个三角函数,可以用于进行各种数学计算。在使用这些函数时,需要注意参数的单位和返回值的单位,以及参数的取值范围。常用函数的定义如下:

        math.sin(x): 计算正弦值,参数x是弧度值。

        math.cos(x): 计算余弦值,参数x是弧度值。

        math.tan(x): 计算正切值,参数x是弧度值。

        math.asin(x): 计算反正弦值,参数x是-1到1之间的数值。

        math.acos(x): 计算反余弦值,参数x是-1到1之间的数值。

        math.atan(x): 计算反正切值,参数x是任意实数。

        math.atan2(y, x): 计算反正切值,参数y和x是坐标值,返回[-π, π]之间的弧度值。

import math

# 输出:1.0
print(math.sin(math.pi / 2))
# 输出:6.123233995736766e-17
print(math.cos(math.pi / 2))
# 输出:-1.2246467991473532e-16
print(math.tan(math.pi))
# 输出:1.5707963267948966
print(math.asin(1))
# 输出:0.0
print(math.acos(1))
# 输出:0.7853981633974483
print(math.atan(1))
# 输出:0.7853981633974483
print(math.atan2(6, 6))

角度转换函数

        math模块提供了几个用于角度和弧度之间转换的函数,如下:

        math.radians(x):这个函数将角度转换为弧度。x是以度为单位的角度值,函数返回对应的弧度值。

        math.degrees(x):这个函数将弧度转换为角度。x是以弧度为单位的弧度值,函数返回对应的角度值。

import math

# 将角度转换为弧度
angle_in_radians = math.radians(45)
# 输出:0.7853981633974483
print(angle_in_radians)
  
# 将弧度转换为角度
angle_in_degrees = math.degrees(math.pi / 2)
# 输出:90.0
print(angle_in_degrees)

双曲函数

        math模块提供了几个双曲函数,用于计算双曲线相关的数值。以下是常用的几个双曲函数:

        math.sinh(x):计算x的双曲正弦值。

        math.cosh(x):计算x的双曲余弦值。

        math.tanh(x):计算x的双曲正切值。

        math.asinh(x):计算x的反双曲正弦值,也称为双曲正弦函数的逆函数。

        math.acosh(x):计算x的反双曲余弦值,也称为双曲余弦函数的逆函数。

        math.atanh(x):计算x的反双曲正切值,也称为双曲正切函数的逆函数。

        注意:在计算反双曲函数时,参数x必须在函数的定义域内,否则会引发ValueError异常。

import math
  
# 输出:1.1752011936438014
print(math.sinh(1.0))
# 输出:1.5430806348152437
print(math.cosh(1.0))
# 输出:0.7615941559557649
print(math.tanh(1.0))

# 输出:0.881373587019543
print(math.asinh(1.0))
# 输出:0.0
print(math.acosh(1.0))
# 输出:0.5493061443340549
print(math.atanh(0.5))

特殊函数

        math模块提供了一些特殊函数,用于进行开方、取余等运算。以下是常用的几个特殊函数:

        math.fmod(x, y):返回x除以y的余数,即:x mod y。

        math.modf(x):返回x的整数部分和小数部分,即:(math.floor(x), x - math.floor(x))。

        math.sqrt(x):返回x的平方根。

        math.factorial(x):返回x的阶乘,即:x!。

        math.gcd(a, b):返回a和b的最大公约数。

        math.lcm(a, b):返回a和b的最小公倍数。

import math
  
# 输出:1.0
print(math.fmod(9, 4))
# 输出:(0.125, 8.0)
print(math.modf(8.125))
# 输出:25.0
print(math.sqrt(625))
# 输出:3628800
print(math.factorial(10))
# 输出:4
print(math.gcd(36, 64))
# 输出:576
print(math.lcm(36, 64))

更多推荐

如何使用Java爬取指定链接的网页内容

在当今信息时代,互联网上的数据量庞大且不断增长。为了获取特定网页的内容,爬虫技术成为了一种非常有用的工具。本文将介绍如何使用Java编程语言来实现爬取指定链接的网页内容。首先,我们需要准备好Java开发环境。确保你已经安装了JavaDevelopmentKit(JDK)并配置好了环境变量。接下来,我们将使用Java提供

面向Java开发者的ChatGPT提示词工程(7)

在如今信息爆炸的时代,我们面临着海量的文字信息,很难抽出足够的时间去阅读所有感兴趣的内容。然而,大语言模型为我们提供了一种有效的解决方案:通过自动文本摘要,帮助我们快速获取文章的核心内容。这种技术已经被广泛应用于各种软件应用程序中。以ChatGPT为例,它提供了一个简洁的网页界面,让用户能够轻松地对文章进行摘要。这种方

关于C#.Net网页跳转的7种方法

一、目前在ASP.NET中页面传值共有这么几种方式:1.Response.Redirect("http://www.hao123.com",false);目标页面和原页面可以在2个服务器上,可输入网址或相对路径。后面的bool值为是否停止执行当前页。跳转向新的页面,原窗口被代替。浏览器中的URL为新路径。Respons

运算符——“MySQL数据库”

各位CSDN的uu们好呀,今天,小雅兰的内容是MySQL数据库里面的操作符,下面,让我们进入操作符的世界吧!!!算术运算符比较运算符逻辑运算符位运算符运算符的优先级拓展:使用正则表达式查询算术运算符算术运算符主要用于数学运算,其可以连接运算符前后的两个数值或表达式,对数值或表达式进行加(+)、减(-)、乘(*)、除(/

您的开发团队是否面临效率陷阱?

“努力还是摸鱼?”这是一个职场老笑话了,当被问到这句话,人们往往回以礼貌一笑或单纯点头、做个鬼脸。这个笑话无伤大雅,但它总让人想起一个根深蒂固的观念:在工作时,我们必须时刻保持高效。在谷歌搜索“工作效率”,会弹出数百万结果,无论是关于自我提升的书籍,还是TED演讲,又或是提高工作效率的应用程序,比如“如何在工作中提高工

(10)(10.9) 术语表(三)

文章目录1Oilpan2OSD3PCB4PCM5PDB6PIC7PID8POI9PPM10PWM11PX4FMU/PX4IO12RTL13SiRFIII14Sketch15SVN16TelemetrySystem17Thermopile18UAV19VLOS20WAAS21Xbee22ZigBee1OilpanOilp

开学好用的电容笔有哪些推荐?平价触控笔推荐

尽管ApplePencil很贵,但是如果你有足够的预算的话,也可以考虑买一款。此外,iPad配备了一款电容笔,它不但能用于画画,也能用于记录笔记。苹果的原装电容笔,虽然功能强大,但是价格非常昂贵,而国产的平替型电容笔,无论是从手感上,还是从配置上,都能和苹果原装的Pencil相抗衡,最关键的是,价格只要一二百块钱。以下

【C++】C++ 语言对 C 语言的加强 ① ( 实用性增强 - 变量任意位置定义 | register 关键字增强 - 自动进行寄存器优化 )

文章目录一、实用性增强-变量任意位置定义二、register关键字增强-自动进行寄存器优化一、实用性增强-变量任意位置定义C语言定义变量位置:在C语言中,函数作用域中使用到的变量,必须在作用域开始的位置定义,一旦开始编写代码逻辑后,在逻辑代码行之间,不能定义变量;新版本的C语言编译器不会报错,可以在逻辑代码之间定义变量

初识canvas

对于一个前端人员来说,canvas是必须掌握的技能之一。如果你想像画画一样在浏览器上作画,那么canvas就可以做你的画布。接下啦我们就以画画的标准来初步认识下canvas1.画布画画的第一步你得有一张画纸或者画布,canvas标签就是我们的画布。画布都是有尺寸的,如果你想要做大一点的画那就需要大一点的画布,反之也是,

shell脚本命令

Shell命令是在类Unix操作系统中使用的命令行解释器(shell)中执行的命令。Shell命令可以用于执行系统命令、操作文件、进行文本处理、管理进程等。以下是一些常见的Shell命令:1.`ls`:列出当前目录下的文件和文件夹。2.`cd`:切换当前工作目录。3.`pwd`:显示当前工作目录的路径。4.`mkdir

linux下二进制安装docker最新版docker-24.0.6

一.基础环境本次实操是公司技术培训下基于centos7.9操作系统安装docker最新版docker-24.0.6,下载地址是:https://download.docker.com/linux/static/stable/x86_64/docker-24.0.6.tgz二.下载Docker压缩包mkdir-p/opt

热文推荐