Python的math库——常用数学函数全解析

news2024/9/21 20:04:42

文末赠免费精品编程资料~~

一、math模块简介

math 是 Python 内置的一个标准库,它包含了许多执行复杂数学运算的函数,如三角函数、对数函数、指数函数等。

二、常用函数详解与示例

基本数学运算

math.sqrt(x): 计算平方根。

import math# 计算平方根result = math.sqrt(16)print(result)  # 输出 4.0

math.pow(x, y): 计算 x 的 y 次幂。

import math# 计算幂result = math.pow(2, 3)print(result)  # 输出 8.0

math.ceil(x): 向上取整。

import math# 向上取整result = math.ceil(3.14)print(result)  # 输出 4

math.floor(x): 向下取整。​​​​​​​

import math# 向下取整result = math.floor(3.14)print(result)  # 输出 3

math.trunc(x): 截断小数部分。​​​​​​​

import math# 截断小数result = math.trunc(3.14)print(result)  # 输出 3
三角函数

math.sin(x), math.cos(x), math.tan(x): 正弦、余弦、正切函数。​​​​​​​

import math# 计算角度对应的三角函数值angle = math.pi / 4sin_val = math.sin(angle)cos_val = math.cos(angle)tan_val = math.tan(angle)print(sin_val)  # 输出约 0.707print(cos_val)  # 输出约 0.707print(tan_val)  # 输出约 1.0

math.asin(x), math.acos(x), math.atan(x): 反三角函数。​​​​​​​

import math# 计算反三角函数值arcsin_val = math.asin(0.707)arccos_val = math.acos(0.707)arctan_val = math.atan(1.0)print(arcsin_val)  # 输出约 0.785print(arccos_val)  # 输出约 0.785print(arctan_val)  # 输出约 0.785
对数函数​​​​​​​
math.log(x[, base]): 自然对数。import math# 计算自然对数log_val = math.log(2.71828)log_base_10_val = math.log(100, 10)print(log_val)  # 输出约 1.0print(log_base_10_val)  # 输出 2.0

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

import math# 计算以 10 为底的对数log10_val = math.log10(100)print(log10_val)  # 输出 2.0
指数函数​​​​​​​
math.exp(x): e 的 x 次幂。import math# 计算 e 的 x 次幂exp_val = math.exp(1)print(exp_val)  # 输出约 2.71828
角度和弧度转换

math.degrees(x): 弧度转角度。​​​​​​​

import math# 弧度转角度radian = math.pi / 4degrees = math.degrees(radian)print(degrees)  # 输出 45.0

math.radians(x): 角度转弧度。​​​​​​​

import math# 角度转弧度degree = 45radians = math.radians(degree)print(radians)  # 输出约 0.785
最大最小值

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

import math# 绝对值abs_val = math.fabs(-3.14)print(abs_val)  # 输出 3.14

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

import math# 余数mod_val = math.fmod(10, 3)print(mod_val)  # 输出 1.0
常量

math.pi: 圆周率 π。​​​​​​​

import math# 圆周率pi_val = math.piprint(pi_val)  # 输出约 3.14159

math.e: 自然对数的底数 e。​​​​​​​

import math# 自然对数的底数e_val = math.eprint(e_val)  # 输出约 2.71828
其他常用函数

math.isclose(a, b, rel_tol=1e-09, abs_tol=0.0): 判断 a 是否接近于 b。​​​​​​​

import math# 判断是否接近close_result = math.isclose(1.0000001, 1.0)print(close_result)  # 输出 True

math.isinf(x): 判断 x 是否为无穷大。​​​​​​​

import math# 判断是否为无穷大inf_result = math.isinf(float('inf'))print(inf_result)  # 输出 True

math.isnan(x): 判断 x 是否为 NaN(非数字)。​​​​​​​

import math# 判断是否为 NaNnan_result = math.isnan(float('nan'))print(nan_result)  # 输出 True

三、总结

通过上述示例,我们可以看到 math 模块在处理各种数学运算时的强大功能。无论你是需要进行简单的数学运算,还是复杂的科学计算,math 模块都是一个非常有用的工具箱。希望这篇介绍能够帮助你更好地理解和使用 math 模块中的函数。

文末福利

如果你对Python感兴趣的话,可以试试我整理的这一份全套的Python学习资料,【点击这里】免费领取!

包括:Python激活码+安装包、Python
web开发,Python爬虫,Python数据分析,人工智能、自动化办公等学习教程。带你从零基础系统性的学好Python!

① Python所有方向的学习路线图,清楚各个方向要学什么东西
② 100多节Python课程视频,涵盖必备基础、爬虫和数据分析
③ 100多个Python实战案例,学习不再是只会理论
④ 华为出品独家Python漫画教程,手机也能学习

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处:http://www.coloradmin.cn/o/2113627.html

如若内容造成侵权/违法违规/事实不符,请联系多彩编程网进行投诉反馈,一经查实,立即删除!

相关文章

Day-07-QT中如何引入图片替换控件

一、引入步骤 在引用之前可以在自己项目保存的地址下面创建一个文件夹,专门用来保存图片 1、添加一个资源文件 2、选择文件类型 3、 点击AddFile添加要用的图片 4、添加完后CtrlS保存 5、选择要替换的控件,改变样式表 6、选择border-image 7、选中图…

SQL治理经验谈:索引覆盖

背景 explain - format id: query sql 的标识idSELECT_TYPE: 查询的类型(SIMPLE/PRIMARY/SUBQUERY/DERIVED/UNION/UNION RESULT/DEPENDENT SUBQUERY/DEPENDENT UNION)table: 表名Partitions: 表连接的分区数type: 查询中使用的访问类型(syste…

电脑主机内存

在计算机的组成结构当中内存是非常重要的一部分,它用来存储程序和数据。对于计算机来说有了内存才能保证计算机的正常工作。 内部存储器就是我们所说的内存条,一般是用来即时存储数据。不做数据的长期保留。 外部存储器就是我们常说的固态或者硬盘。固态…

电脑点击关机之后,又自动重启开机了。根本就关不了?

前言 有个小姐姐说,她家的电脑好生奇怪:点击【关机】按钮之后,电脑提示【正在关机】,过了几秒,电脑又自动开机了…… 好家伙!也就是说关机和重启根本就没区别,电脑完全无法断电。 最后忍无可…

C++list类介绍和常用接口说明(超全超详细)

个人主页:C忠实粉丝 欢迎 点赞👍 收藏✨ 留言✉ 加关注💓本文由 C忠实粉丝 原创 Clist类介绍和常用接口说明(超全超详细) 收录于专栏【C语法基础】 本专栏旨在分享学习C的一点学习笔记,欢迎大家在评论区交流讨论💌 目录…

推荐一款强大的OCR软件,请低调使用!

今天给大家分享一款开源的OCR识别软件,可以提升大家的办公效率——Umi-OCR,支持window​和Linux系统。 Umi-OCR支持提取一张图片或者多张图片的信息,只需通过右边的功能页选择相应的功能。 点击左边的“截图OCR”进入页面 点击“截图”按钮选…

SpringBoot自定义starter(starter的命名规范、starter的结构、自定义starter、为配置属性添加描述信息、检验配置属性)

文章目录 0. 前言1. 前置知识1.1 starter的命名规范1.2 分析 Mybatis 的场景启动器1.3 starter的结构分析 2. 创建自定义的场景启动器2.1 创建父工程2.2 初始化父工程2.3 创建 autoconfigure 模块2.4 创建 starter 模块2.5 在 starter 模块中引入 autoconfigure 模块的依赖2.6 …

算法学习:滑动窗口

题目 滑动窗口 滑动窗口的题目在解决统计连续带特殊要求的元素串问题时作用巨大。逃离仅仅只是套路学习的黑洞,我认为这种方法在无序的统计中,找到了有序的切入点。初看题目时,可以想到的统计方法有很多,但实现在计算机上则必须有…

我在高职教STM32——准备HAL库工程模板(1)

新学期开学在即,又要给学生上 STM32 嵌入式课程了。这课上了多年了,一直用的都是标准库来开发,已经驾轻就熟了。人就是这样,有了自己熟悉的舒适圈,就很难做出改变,老师上课也是如此,排斥新课和不熟悉的内容。显然,STM32 的开发,HAL 库已是主流,自己其实也在使用,只不…

Mac使用Elasticsearch

下载 Past Releases of Elastic Stack Software | Elastic 解压tar -xzvf elasticsearch-8.15.1-darwin-x86_64.tar.gz 修改配置文件config/elasticsearch.yml xpack.security.enabled: false xpack.security.http.ssl: enabled: false 切换目录 cd elasticsearch-8.15.1/…

Superset二次开发之Select 筛选器源码分析

路径:superset-frontend/src/filters/components/Select 源码文件: 功能点: 作用 交互 功能 index.ts作为模块的入口点,导出其他文件中定义的主要组件和函数。它使其他文件中的导出可以被外部模块使用。 SelectFilterPlugin.tsx 定义主要…

Qt/C++ 个人开源项目#串口助手(源码与发布链接)

一、项目概述 该串口助手工具基于Qt/C开发,专为简化串口通信调试与开发而设计,适合新手快速上手。工具具有直观的用户界面和丰富的功能,旨在帮助用户与串口设备建立可靠通信,便于调试、数据传输和分析。 二、主要功能 波特率&a…

Qt QLineEdit 输入内容后字数在右侧动态展示

前言 QLineEdit 设置可输入最大长度可以使用 lineEdit->setMaxLength(10); 怎么实时的把当前输入字数显示出来呢&#xff0c;像饿了么的 input 组件那样 <el-inputtype"text"placeholder"请输入内容"v-model"text"maxlength"10&q…

基于orangePi的智能家居系统

目录 一.接线图 1.orangePi接线 2.继电器接线 二.语音模块的配置 1.pin脚的配置 2.命令词自定义信息 三.测试 1.通过gpio指令测试烟雾检测器是否正确连接 2.编写脚本测试其他模组接线是否正常 四.人脸识别方案 1.首先开通人脸搜索识别服务 2. 点击产品控制台,向人…

【重学 MySQL】十五、过滤数据

【重学 MySQL】十五、过滤数据 基本用法使用AND、OR和NOT使用IN操作符使用BETWEEN操作符使用LIKE操作符使用IS NULL和IS NOT NULL 在MySQL中&#xff0c;过滤数据主要通过WHERE子句来实现。WHERE子句允许你指定条件来过滤从表中检索出来的行。只有当行满足WHERE子句中的条件时&…

个人随想-一个有意思的鼠标截屏RAG

multi-model rag现在的技术已经比较成熟了&#xff0c;我们也落地了很多公司的rag和agent项目。今天先不说项目落地&#xff0c;今天给大家分享一个有意思的需求。 广州的一家公司&#xff0c;当我们rag搭建完成后&#xff0c;他们的一个产品经理提了一个需求。他们说&#xf…

C#转java工具

使用 激活 点击关闭即可 参考文献 https://www.cnblogs.com/liyhbk/p/17358520.html

【视频教程】手把手AppWizard轻松制作一个emWin滑动主界面控制框架,任意跳转控制(2024-09-06)

现在的新版AppWizard已经比较好用&#xff0c;用户可以轻松的创建各种项目常规界面。 比如早期创建一个支持滑动的主界面框架&#xff0c;并且可以跳转各种子界面&#xff0c;仅仅界面布局和各种图片格式转换都要花不少时间&#xff0c;而现在使用AppWizard&#xff0c;可以说…

关键点检测(7)——yolov8-head的搭建

前两节我学习了yolov8的backbone和head操作。这一节就到了head部分。  我们知道yolov8在流行的yolov5的架构上进行了扩展。在多个方面提供了改进。尤其是head部分&#xff0c;变化最大。yolov8模型与其前身的主要区别在于使用了无锚点检测&#xff08;即从原先的耦合头变成了解…

无人机电调接线

接线方式&#xff1a; 电调的作用是将飞控板的PWM控制信号转变为电流信号 因为电机的电流是很大的&#xff0c;通常每个点击正常工作时都平均有3A左右的电流&#xff0c;如果没有电调的存在&#xff0c;飞控无法承受这么大的电流。 电调的选择&#xff1a;电调上标的电流值是…