Python 进阶(十):数学计算(math 模块)

在这里插入图片描述

《Python入门核心技术》专栏总目录・点这里

文章目录

    • 1. 导入math模块
    • 2. 常用数学函数
    • 3. 常量
    • 4. 其他函数和用法
    • 5. 总结


大家好,我是水滴~~

Python的math模块提供了许多数学运算函数,为开发者在数值计算和数据处理方面提供了强大的工具。本教程将详细介绍math模块的常用函数及其应用示例,帮助您更好地理解和使用这一模块。

1. 导入math模块

在使用math模块之前,我们需要先导入它。可以使用以下代码将math模块导入到您的Python脚本中:

import math

2. 常用数学函数

math模块提供了许多常用的数学函数,下面是其中一些常用函数的介绍及示例代码:

  • math.sqrt(x):返回x的平方根。
import mathresult = math.sqrt(25)
print(result)  # 输出:5.0
  • math.ceil(x):返回大于等于x的最小整数。
import mathresult = math.ceil(4.3)
print(result)  # 输出:5
  • math.floor(x):返回小于等于x的最大整数。
import mathresult = math.floor(4.7)
print(result)  # 输出:4
  • math.pow(x, y):返回x的y次幂。
import mathresult = math.pow(2, 3)
print(result)  # 输出:8.0
  • math.log(x, base):返回以base为底,x的对数。
import mathresult = math.log(10, 2)
print(result)  # 输出:3.3219280948873626
  • math.sin(x):返回x的正弦值。
import mathresult = math.sin(math.pi/2)
print(result)  # 输出:1.0
  • math.cos(x):返回x的余弦值。
import mathresult = math.cos(math.pi)
print(result)  # 输出:-1.0
  • math.tan(x):返回x的正切值。
import mathresult = math.tan(math.pi/4)
print(result)  # 输出:1.0
  • math.asin(x):返回x的反正弦值。
import mathresult = math.asin(1)
print(result)  # 输出:1.5707963267948966
  • math.acos(x):返回x的反余弦值。
import mathresult = math.acos(0)
print(result)  # 输出:1.5707963267948966
  • math.atan(x):返回x的反正切值。
import mathresult = math.atan(1)
print(result)  # 输出:0.7853981633974483
  • math.degrees(x):将弧度转换为角度。
import mathresult = math.degrees(math.pi/2)
print(result)  # 输出:90.0
  • math.radians(x):将角度转换为弧度。
import mathresult = math.radians(180)
print(result)  # 输出:3.141592653589793
  • math.fabs(x):返回x的绝对值。
import mathresult = math.fabs(-4.5)
print(result)  # 输出:4.5
  • math.factorial(x):返回x的阶乘。
import mathresult = math.factorial(5)
print(result)  # 输出:120
  • math.modf(x):将x拆分为整数部分和小数部分,并分别返回。
import mathresult = math.modf(4.25)
print(result)  # 输出:(0.25, 4.0)
  • math.isqrt(x):返回x的平方根的整数部分。
import mathresult = math.isqrt(25)
print(result)  # 输出:5

3. 常量

math模块还提供了一些常用的数学常量,如π(pi)和自然常数e。以下是使用这些常量的示例代码:

import mathprint(math.pi)  # 输出:3.141592653589793
print(math.e)  # 输出:2.718281828459045

4. 其他函数和用法

除了上述介绍的常用函数外,math模块还提供了许多其他函数,如三角函数、双曲函数、指数函数、取整函数、对数函数等。下面是一些其他常用函数的介绍及示例代码:

  • math.sinh(x):返回x的双曲正弦值。
import mathresult = math.sinh(2)
print(result)  # 输出:3.6268604078470186
  • math.cosh(x):返回x的双曲余弦值。
import mathresult = math.cosh(2)
print(result)  # 输出:3.7621956910836314
  • math.tanh(x):返回x的双曲正切值。
import mathresult = math.tanh(2)
print(result)  # 输出:0.9640275800758169
  • math.exp(x):返回e的x次幂。
import mathresult = math.exp(2)
print(result)  # 输出:7.3890560989306495
  • math.log10(x):返回以10为底,x的对数。
import mathresult = math.log10(100)
print(result)  # 输出:2.0
  • math.ceil(x):返回大于等于x的最小整数。
import mathresult = math.ceil(4.3)
print(result)  # 输出:5
  • math.floor(x):返回小于等于x的最大整数。
import mathresult = math.floor(4.7)
print(result)  # 输出:4
  • math.trunc(x):返回x的整数部分。
import mathresult = math.trunc(4.7)
print(result)  # 输出:4
  • math.isinf(x):检查x是否为正无穷大或负无穷大。
import mathresult = math.isinf(float('inf'))
print(result)  # 输出:True
  • math.isnan(x):检查x是否为NaN(非数字)。
import mathresult = math.isnan(float('nan'))
print(result)  # 输出:True
  • math.gcd(x, y):返回x和y的最大公约数。
import mathresult = math.gcd(24, 36)
print(result)  # 输出:12

5. 总结

在数值计算和数据处理中,math模块是Python中不可或缺的工具之一。本教程详细介绍了math模块的常用函数及其应用示例,帮助您更好地利用这些函数进行数学计算。希望本教程对您学习和使用math模块有所帮助!

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

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

相关文章

【100个Cocos实例】看完这个,我再也不要当赌狗了...

引言 探索游戏开发中抽奖转盘的奥秘。 抽奖转盘是一种常见的互动元素,通常用于游戏、营销活动等场景。 本文将介绍一下抽奖转盘的原理和实现。 本文源工程可在文末阅读原文获取,小伙伴们自行前往。 1.抽奖转盘的组成 抽奖转盘的实现涉及多个组成部分…

基于springboot校园车辆管理系统

背景 伴随着社会经济的快速发展,机动车保有量不断增加。不断提高的大众生活水平以及人们不断增长的自主出行需求,人们对汽车的 依赖性在不断增强。汽车已经发展成为公众日常出行的一种重要的交通工具。在如此形势下,高校校园内的机动车数量也…

【KubeSphere】基于AWS在 Linux 上以 All-in-One 模式安装 KubeSphere

文章目录 一、实验配置说明二、实验准备工作1.确认系统版本2. 修改网络DNS3. 关闭SELINUX4. 关闭防火墙 三、实验依赖项安装四、下载 KubeKey五、一键化安装部署六、验证安装结果七、登录KubeSphere管理控制台八、参考链接 一、实验配置说明 本实验基于AWS启动一台新实例&…

I/O多路转接之epoll

承接上文 I/O多路转接之poll-CSDN博客 简介 epoll的相关系统调用 epoll底层原理 编写epoll的server 重新回归一下epoll原理,LT,ET epoll改成ET工作模式 -- 初识(有bug) epoll初识 按照man手册的说法: 是为处理大批量句柄而作了改进的poll. 它是在2.5.4…

CANdelaStudio 使用教程4 编辑State

文章目录 简述1、State Groups2、Dependencies3、 Defaults State1、 会话状态2、 新增会话状态3、 编辑 服务对 State 的依赖关系 State Diagram 简述 1、State Groups 2、Dependencies 在这里,可以编辑现有服务在不同会话状态或安全访问状态的支持情况和状态转换…

python每日一题——7接雨水

题目 给定 n 个非负整数表示每个宽度为 1 的柱子的高度图,计算按此排列的柱子,下雨之后能接多少雨水。 示例 1: 输入:height [0,1,0,2,1,0,1,3,2,1,2,1] 输出:6 解释:由数组 [0,1,0,2,1,0,1,3,2,1,2,1] 表…

粒子群算法Particle Swarm Optimization (PSO)的定义,应用优点和缺点的总结!!

文章目录 前言一、粒子群算法的定义二、粒子群算法的应用三、粒子群算法的优点四、粒子群算法的缺点:粒子群算法的总结 前言 粒子群算法是一种基于群体协作的随机搜索算法,通过模拟鸟群觅食行为而发展起来。该算法最初是由Eberhart博士和Kennedy博士于1…

概念解析 | 玻尔兹曼机

注1:本文系“概念解析”系列之一,致力于简洁清晰地解释、辨析复杂而专业的概念。本次辨析的概念是:玻尔兹曼机。 概念解析 | 玻尔兹曼机 引言 随着人工智能技术的飞速发展,玻尔兹曼机作为一种重要的生成模型,受到了广泛的关注。 背景介绍 玻尔兹曼机(Boltzmann Machine)是一…

Mapper 编写有哪几种方式, 使用MyBatis的mapper接口调用时有哪些要求,接口绑定有两种实现方式, MyBatis高级查询

文章目录 Mapper 编写有哪几种方式?接口绑定有两种实现方式使用MyBatis的mapper接口调用时有哪些要求?Mybatis的Xml映射文件中,不同的Xml映射文件,id是否可以重复?简述Mybatis的Xml映射文件和Mybatis内部数据结构之间的…

uniapp+vue基于Android的校园二手跳蚤市场的设计与实现 微信小程序

实现功能: 用户管理:登陆、注册、注销、修改密码、上传头像、修改资料 发布与检索:发布商品、模糊搜索、人气排序、价格排序、时间排序、推送商品(协同过滤算法实现个性化推荐),最新发布、分类检索 核心交易…

Java算法小结-Arrays的应用

/* public static String toString(数组) 数组拼接成一个字符串 public static int binarySearch(数组,查找的元素) 二分查找法查找元素 public static int[] copyOf(原数组,新数组的长度) public static int[] copyOfRange(原数组,起始索引,…

1、分布式锁实现原理与最佳实践(一)

在单体的应用开发场景中涉及并发同步时,大家往往采用Synchronized(同步)或同一个JVM内Lock机制来解决多线程间的同步问题。而在分布式集群工作的开发场景中,就需要一种更加高级的锁机制来处理跨机器的进程之间的数据同步问题&…

安卓系统修图软件(二)

晚上好,自上一次博主分享修图软件之后,今天博主将带来第二期安卓修图软件的推送,个个都是宝藏,建议大家赶紧体验哦。 1.canva可画 如果说有一款手机APP可以与PS媲美,那么一定非canvas莫属。这款强大的修图软件支持海报…

java springboot测试类虚拟MVC环境 匹配请求头指定key与预期值是否相同

上文 java springboot测试类虚拟MVC环境 匹配返回值与预期内容是否相同 (JSON数据格式) 版 中 我们展示 json匹配内容的方式 那么 本文我们来看看Content-Type属性的匹配方式 首先 我们从返回体可以看出 Content-Type 在请求头信息 Headers 中 我们直接将测试类代码更改如下 …

企业文档文件管理软件推荐:提升管理效率与数据安全性

Zoho WorkDrive企业网盘是一种高效的文件管理工具,它不仅可以为组织搭建统一、高效、安全、智能的内容管理体系,还能够提供大规模支撑、海量数据处理、非结构化数据治理、智能挖掘与洞察等服务能力。通过这些服务,企业可以更好地管理和利用其…

站群服务器与普通服务器有哪些区别?

站群服务器"通常指一组被单个实体或组织控制的网络站点,用于提高特定站点在搜索引擎中的排名。在讨论站群服务器与普通服务器的区别时,可能涉及到以下方面: 1. IP地址: 站群服务器: 站群服务器可能涉及多个站点&a…

leetcode 41. 缺失的第一个正数

目录 暴力排序 桶排序 桶排序Set 桶排序分治思想 官方题解 桶排序数组内标记 桶排序额外数组标记(更好理解) 给你一个未排序的整数数组 nums ,请你找出其中没有出现的最小的正整数。 请你实现时间复杂度为 O(n) 并且只使用常数级别额…

Rust在Web开发中的应用

欢迎关注我的公众号lincyang新自媒体,回复关键字【程序员经典书单】,领取程序员的100本经典书单 大家好!我是lincyang。 今天我们将一起深入探索Rust在Web开发领域的应用。尽管Rust最初设计用于系统编程,但其性能、安全性和现代并…

Pinia的使用技巧

一、安装 npm install pinia 二、main.ts引入 import { createApp } from vue import App from ./App.vue import { createPinia } from piniaconst app createApp(App) app.use(createPinia()) app.mount(#app)三、定义参数 import { defineStore } from piniatype User …

只狼 资源分享

版本介绍 v1.06版|容量15GB|官方简体中文|支持键盘.鼠标.手柄|赠官方原声4首BGM|赠多项修改器|赠一周目全义手忍具强化通关存档|2020年01月15号更新 只狼中文设置: https://jingyan.baidu.com/article/cb5d6105bc8556005d2fe048.html 只狼键盘对应按键&#xff1…