Python之Math库解析

本文涉及的产品
全局流量管理 GTM,标准版 1个月
云解析 DNS,旗舰版 1个月
公共DNS(含HTTPDNS解析),每月1000万次HTTP解析
简介: Python之Math库解析

Python内置数值操作

       1、数字运算符

       Python提供了 9 个基本的数值运算操作符,这些操作符有解释器直接提供,不需要引用第三方库,例如 最只因本的 " + "   " - "   " * "   " / "  " % "  " ** "等,其功能如下表:


Python内置数值运算符

操作符 功能
x + y x 与 y 之和
x - y x 与 y 之差
x * y x 与 y 之积
x / y x 与 y之商
x // y x 除 y 的整数商
x % y x 与 y之商的余数,(也称为取模运算)
- x x  * ( - 1)的简化写法,x的负值
+ x x本身
x ** y x的y次幂,即



       python中数值的运算基本符合我们生活中的数学习惯,对于非复数来说,只是将其虚部看为了0进行计算,并不影响其计算。

       此外,这里面的所有运算操作符,都有其对应的增强赋值操作符的形式:

+=  、-=、*=、/=、*=、//=、%=、**=


例如:x += 1 就相当于 x = x + 1

       2、数值运算函数

       当然python也提供了许多内置的数值运算函数,如下:


Python内置数值运算函数

函数 功能
abs(x) 计算并返回x的绝对值
divmod(x,y) 以二元组的形式返回(x//y ,x%y)
pow(x,y) 返回x的y次幂: ,同x**y
pow(x,y,z) 返回(x**y)% z
round(x [ ,ndigits ] ) 对x进行四舍五入操作,保留ndigits位小数。round(X)则返回整数值
min(X1,X2,......,Xn) 返回X1 ~  Xn中最小值
max(X1,X2,......,Xn) 返回X1 ~  Xn中最大值


        3、类型转换

       python的这些操作都会产生不同数据类型的数据。例如两个整数做 “/”运算就会产生 浮点数的结果。针对这个情况python提供了内置的数值类型转换函数,可以让两个数据进行显示的数据类型转换:


Python内置数值类型转换函数

函数 功能
int(x) 将x的类型数据转化为整数,x可以是浮点数,字符串
float(x) 将x转化为浮点数,x可以是字符串,可以是整数
complex(x [ ,im]) 生成一个复数x(其实部为x,im为可选虚部,默认为0),其中x可以为整数、浮点数、字符串;im可以是整数、浮点数,但是不能为字符串


Math库

       上面提供了许多的数值操作方法,但是这并不能满足我们计算机中或者是数学上的计算要求,数学计算中还包含了sinx,cosx等复杂的函数,要进行这些数据类型数据和函数的计算,Python提供了Math供解决。


       Math库是Python的内置库,不需要下载安装,导入即可使用。由于复数类型在一般的计算中并不常见,所以Math的函数并不支持复数类型的数据,仅支持浮点数和整数。

       1、常用数值表示函数


math库函数

常用函数 数学表达 功能
math.pi π 圆周率,值为3.1415926.....
math.e e 自然对数,值为2.718281.....
math.inf 正无穷大
-math.inf -∞ 负无穷大
math.nan 非浮点数标记,返回浮点nan
其他函数 数学表达 功能
math.fabs(x) 返回x的绝对值,同abs(x)
math.fmod(x,y) x%y 返回x与y的模,即x%y
math.fsum([ X1,X2,....Xn ]) X1+X2....+Xn 浮点数精确求和(传入参数为可迭代类型,如列表等等)
math.ceil(x) x⌈�⌉ 向上取整,返回不小于x的最小整数
math.floor(x) x⌊�⌋ 向下取整,返回不大于x的最大整数
math.factorial(x) x ! 返回x的阶乘,如果x是小数或者负数,返回ValueError(一种异常)
math.gcd(x,y) 返回a,b的最大公约数
math.frexp(x) x = m *2e2� 以二元组的形式,返回组成x的尾数和指数(m,e)
math.ldexp(x,i) x * 2i2� 返回x * 2i2�的值
math.modf(x) 例如x=3.14       返回(0.1400...,3.0) 以元组的形式(浮点数部分,整数部分)的形式返回x的小数和整数部分
math.trunc(x) 返回x的整数部分
math.isinf(x) 当x为正负无穷大,返回True,否则返回False
math.isfinite(x) 当x不是无穷大或NaN,返回True否则返回False

注: 当我们计算math.modf(3.14)的时候可能会发现以下结果:


可以发现小数部分并不是0.14,而是后面带了一个很小的尾数,

0. 0000000000000012

直接使用 == 比较浮点数的话会对最终的结果产生影响,因此建议采用math库函数。


        2、math库幂对函数

math库幂对函数

函数 数学表达 描述
math.pow(x,y) ,返回x的y次幂,即x**y
math.exp(x) ex�� 返回e的x次幂,e是自然对数
math.sqrt(x) x 返回x的平方根
math.log(x,base) logbasex�������� 返回以base为底,x为对数,base为可选
参数,若不输入,则默认为自然对数e,即lnx
math.log2(x) log2xlog⁡2� 返回以二为底,x的对数
math.log10(x) log10xlog10⁡� 返回以10为底,x的对数
math.expm1(x) ex�� - 1 返回e的x次幂 减一
math.log1p(x) ln(x+1)ln⁡(�+1) 返回x + 1 的自然对数值


        3、math库的三角函数

math库三角函数

函数 数学表达 功能
math.degrees(x) 角度x的弧度值角度值
math.radians(x) 角度x的角度值弧度制
math.hypot(x,y) x2+y2�2+�2 返回坐标(x,y)到原点的距离
math.sin(x) sinxsin⁡� 返回x的正弦值,x为弧度值
math.cos(x) cosxcos⁡� 返回x的余弦值,x为弧度值
math.tan(x) tanxtan⁡� 返回x的正切值,x为弧度值
math.asin(x) arcsinxarcsin⁡� 返回x的反正弦值,x为弧度值
math.acos(x) arccosxarccos⁡� 返回x的反余弦值,x为弧度值
math.atan(x) arctanxarctan⁡� 返回x的反正切值,x为弧度值
math.atan2(y,x) arctanyxarctan⁡�� 返回y/x的反正切值,x为弧度值
math.sinh(x) sinhxsinh⁡� 返回x的双曲正弦函数值
math.cosh(x) coshxcosh⁡� 返回x的双余余弦函数值
math.tanh(x) tanhxtanh⁡� 返回x的双曲正切函数值
math.asinh(x) arcsinh x 返回x的反双曲正弦函数值
math.acosh(x) arccosh x 返回x的反双曲余弦函数值
math.atanh(x) arctanh x 返回x的反双曲正切函数值
目录
相关文章
|
1月前
|
机器学习/深度学习 存储 数据挖掘
Python图像处理实用指南:PIL库的多样化应用
本文介绍Python中PIL库在图像处理中的多样化应用,涵盖裁剪、调整大小、旋转、模糊、锐化、亮度和对比度调整、翻转、压缩及添加滤镜等操作。通过具体代码示例,展示如何轻松实现这些功能,帮助读者掌握高效图像处理技术,适用于图片美化、数据分析及机器学习等领域。
70 20
|
2天前
|
数据采集 JavaScript Android开发
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
23 7
【02】仿站技术之python技术,看完学会再也不用去购买收费工具了-本次找了小影-感觉页面很好看-本次是爬取vue需要用到Puppeteer库用node.js扒一个app下载落地页-包括安卓android下载(简单)-ios苹果plist下载(稍微麻烦一丢丢)-优雅草卓伊凡
|
26天前
|
测试技术 Python
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
101 31
【03】做一个精美的打飞机小游戏,规划游戏项目目录-分门别类所有的资源-库-类-逻辑-打包为可玩的exe-练习python打包为可执行exe-优雅草卓伊凡-持续更新-分享源代码和游戏包供游玩-1.0.2版本
|
5天前
|
监控 算法 安全
内网桌面监控软件深度解析:基于 Python 实现的 K-Means 算法研究
内网桌面监控软件通过实时监测员工操作,保障企业信息安全并提升效率。本文深入探讨K-Means聚类算法在该软件中的应用,解析其原理与实现。K-Means通过迭代更新簇中心,将数据划分为K个簇类,适用于行为分析、异常检测、资源优化及安全威胁识别等场景。文中提供了Python代码示例,展示如何实现K-Means算法,并模拟内网监控数据进行聚类分析。
28 10
|
23天前
|
存储 算法 安全
控制局域网上网软件之 Python 字典树算法解析
控制局域网上网软件在现代网络管理中至关重要,用于控制设备的上网行为和访问权限。本文聚焦于字典树(Trie Tree)算法的应用,详细阐述其原理、优势及实现。通过字典树,软件能高效进行关键词匹配和过滤,提升系统性能。文中还提供了Python代码示例,展示了字典树在网址过滤和关键词屏蔽中的具体应用,为局域网的安全和管理提供有力支持。
50 17
|
26天前
|
运维 Shell 数据库
Python执行Shell命令并获取结果:深入解析与实战
通过以上内容,开发者可以在实际项目中灵活应用Python执行Shell命令,实现各种自动化任务,提高开发和运维效率。
54 20
|
3月前
|
监控 Java 应用服务中间件
高级java面试---spring.factories文件的解析源码API机制
【11月更文挑战第20天】Spring Boot是一个用于快速构建基于Spring框架的应用程序的开源框架。它通过自动配置、起步依赖和内嵌服务器等特性,极大地简化了Spring应用的开发和部署过程。本文将深入探讨Spring Boot的背景历史、业务场景、功能点以及底层原理,并通过Java代码手写模拟Spring Boot的启动过程,特别是spring.factories文件的解析源码API机制。
130 2
|
2月前
|
设计模式 存储 安全
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
创建型模式的主要关注点是“怎样创建对象?”,它的主要特点是"将对象的创建与使用分离”。这样可以降低系统的耦合度,使用者不需要关注对象的创建细节。创建型模式分为5种:单例模式、工厂方法模式抽象工厂式、原型模式、建造者模式。
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
|
2月前
|
存储 设计模式 算法
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
行为型模式用于描述程序在运行时复杂的流程控制,即描述多个类或对象之间怎样相互协作共同完成单个对象都无法单独完成的任务,它涉及算法与对象间职责的分配。行为型模式分为类行为模式和对象行为模式,前者采用继承机制来在类间分派行为,后者采用组合或聚合在对象间分配行为。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象行为模式比类行为模式具有更大的灵活性。 行为型模式分为: • 模板方法模式 • 策略模式 • 命令模式 • 职责链模式 • 状态模式 • 观察者模式 • 中介者模式 • 迭代器模式 • 访问者模式 • 备忘录模式 • 解释器模式
【23种设计模式·全精解析 | 行为型模式篇】11种行为型模式的结构概述、案例实现、优缺点、扩展对比、使用场景、源码解析
|
2月前
|
设计模式 存储 安全
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析
结构型模式描述如何将类或对象按某种布局组成更大的结构。它分为类结构型模式和对象结构型模式,前者采用继承机制来组织接口和类,后者釆用组合或聚合来组合对象。由于组合关系或聚合关系比继承关系耦合度低,满足“合成复用原则”,所以对象结构型模式比类结构型模式具有更大的灵活性。 结构型模式分为以下 7 种: • 代理模式 • 适配器模式 • 装饰者模式 • 桥接模式 • 外观模式 • 组合模式 • 享元模式
【23种设计模式·全精解析 | 创建型模式篇】5种创建型模式的结构概述、实现、优缺点、扩展、使用场景、源码解析

热门文章

最新文章