Python3教程:math 模块的用法

我们知道 Python 有很多运算符可以进行数学运算,如果是简单的问题还好说,但是要处理一些相对复杂的问题也要我们自己一行一行手动的来编写吗?答案当然不是,Python 提供了 math 模块对一些数学运算提供了支持。

1.简介

math 模块提供了对 C 标准定义的数学函数的访问,但该模块并不支持复数运算,如果想使用复数预算需使用 cmath 模块,将支持计算复数的函数区分开的目的,来自于大多数开发者并不愿意像数学家一样需要学习复数的概念,说白了就是我们开发工作几乎用不到复数,得到一个异常而不是一个复数结果也能让我们更早地监测到传递的参数中包含复数。
我们可以先使用 dir 函数查看 math 中包含的内容。示例如下:

import math

print(dir(math))

2 常用函数

ceil(x)

返回 x 的上限,即大于或者等于 x 的最小整数,如果 x 不是一个浮点数,返回一个 Integral 值。示例如下:

import math

print(math.ceil(-1))
print(math.ceil(1.024))

copysign(x, y)

返回一个基于 x 的绝对值和 y 的符号的浮点数。示例如下:

import math

#-1 的符号(-)赋给 1
print(math.copysign(1,-1))
#输出结果
#-1.0

fabs(x)

返回 x 的绝对值。示例如下:

import math

print(math.fabs(-1))

factorial(x)

以一个整数返回 x 的阶乘,如果 x 不是整数或为负数时则将引发 ValueError。示例如下:

import math

print(math.factorial(6))
print(math.factorial(-6))

floor(x)

返回 x 的向下取整,小于或等于 x 的最大整数,如果 x 不是浮点数,则返回 Integral 值。示例如下:

import math

print(math.floor(-1.024))
print(math.floor(1024))

fmod(x, y)

得到 x/y 的余数,其值是一个浮点数。示例如下:

import math

print(math.fmod(1,2))

frexp(x)

返回 x 的尾数和指数对 (m, e),m 是一个浮点数,e 是一个整数,正好是 x == m * 2**e,如果 x 为零,则返回 (0.0, 0) ,否则返回 0.5 <= abs(m) < 1 。示例如下:

import math

print(math.frexp(1024))

fsum(iterable)

返回迭代中的精确浮点值。示例如下:

import math

print(math.fsum([1,2,3,4,5,6]))

gcd(a, b)

返回整数 a 和 b 的最大公约数。示例如下:

import math

print(math.gcd(3, 9))

exp(x)

返回 e 的 x 幂,其中 e = 2.718281... 是自然对数的基数。示例如下:

import math

print(math.exp(6))

expm1(x)

返回 e 的 x 次幂减 1。示例如下:

import math

print(math.expm1(6))

log(x, base=None)

返回 x 的自然对数,默认以 e 为基数,base 参数给定时,将 x 的对数返回给定的 base,计算式为:log(x)/log(base)。示例如下:

import math

print(math.log(10,24))

log1p(x)

返回 x+1 的自然对数(基数为 e)的值。示例如下:

import math

print(math.log1p(1024))

log2(x)

返回 x 以 2 为底的对数,通常比 log(x, 2) 更准确。示例如下:

import math

print(math.log2(1024))

log10(x) 与之类似,返回 x 底为 10 的对数。
pow(x, y)

将返回 x 的 y 次幂。示例如下:

import math

print(math.pow(6,2))

sqrt(x)

返回 x 的平方根。示例如下:

import math

print(math.sqrt(1024))

acos(x)

以弧度为单位返回 x 的反余弦值,x 为 -1 到 1 之间的数值,如果 x 是大于 1,会产生一个错误。示例如下:

import math

print(math.acos(0.5))
print(math.acos(3))

asin(x)

以弧度为单位返回 x 的反正弦值。示例如下:

import math

print(math.asin(0.5))

atan(x)

以弧度为单位返回 x 的反正切值。示例如下:

import math

print(math.atan(0.5))

cos(x)

返回 x 弧度的余弦值。示例如下:

'''
学习中遇到问题没人解答?小编创建了一个Python学习交流群:857662006
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
import math

print(math.cos(0.5))

sin(x)

返回 x 弧度的正弦值。示例如下:

import math

print(math.sin(0.5))

tan(x)

返回 x 弧度的正切值。示例如下:

import math

print(math.sin(0.5))

本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python3教程:math 模块的用法 - Python技术站

(0)
上一篇 2023年4月2日
下一篇 2023年4月2日

相关文章

  • Python中高阶函数与装饰器教程

    1高阶函数 1.1 数学概念 回顾下数学知识: y=f(x) 这是最开始接触的普通函数 y=g(f(x)) 这个就是我们接触到的高阶函数 在数学和计算机科学中,高阶函数至少应当是满足下面一个条件的函数: 1)接受一个或者多个函数作为参数 2)输出一个函数 程序中我们的高阶函数也类似 示例计数器的函数: def counter(base): def inc(s…

    Python开发 2023年3月31日
    00
  • Python3基础教程:return和yield的区别

    一、说明 return一直中,每中语言中其没没有很大差别,就不多说了。(shell语言return的是退出状态,可能差别是比较大的) 最早看到yield应该是哪们语言用来调整什么线程优先级的,记不清了,不过那里的yield和python中的yield应该功能有区别。 python中最早看到yield应该是使用scrapy框架写爬虫的时候,之前也有去看yile…

    Python开发 2023年4月2日
    00
  • python中如何修改文件?

    修改的概念:对于硬盘上数据的修改, 根本没有改的操作, 只有覆盖操作 修改的流程:文件的修改都是数据加载到内存中, 在内存中修改完再覆盖入硬盘 一.修改方式一 1.修改过程 先以 r 模式打开源文件,将源文件内容全部读入内存 然后在内存中完成修改 再以 w 模式打开源文件,将修改后的内容覆盖入源文件 2.优缺点 优点 : 不须要硬盘预留足够的空间 缺点 : …

    python 2023年4月17日
    00
  • Python关于异常处理的教程

    一、什么是异常 异常就是程序运行时发生错误的信号(在程序出现错误时,则会产生一个异常,若程序没有处理它,则会抛出该异常,程序的运行也随之终止),在python中,错误触发的异常如下 1 语法错误 语法错误,根本过不了python解释器的语法检测,必须在程序执行前就改正。 # 语法错误示范一 if # 语法错误示范二 def test: pass # 语法错误…

    Python开发 2023年3月31日
    00
  • python3教程:默认参数为列表

    默认参数的坑 定义一个函数,传入一个list,添加一个end再返回 def add_end(L=[]): L.append(‘END’) return L 正常调用时,结果似乎不错 print (add_end([1,2,3])) #[1, 2, 3, ‘END’] 使用默认参数调用时,一开始结果也是对的,但是再次调用时,结果就不对了 ”’ 学习中遇到问题…

    Python开发 2023年4月2日
    00
  • Python的OptionParser模块教程

    Python中强大的选项处理模块。 示例 #!/usr/bin/pythonfrom optparse import OptionParser parser = OptionParser() parser.add_option(“-f”, “–file”, dest=”filename”, help=”write report to FILE”, meta…

    Python开发 2023年3月31日
    00
  • Python教程:selenium模块用法教程

    1.介绍 selenium最初是一个自动化测试工具,而爬虫中使用它主要是为了解决requests无法直接执行JavaScript代码的问题 selenium本质是通过驱动浏览器,完全模拟浏览器的操作,比如跳转、输入、点击、下拉等,来拿到网页渲染之后的结果,可支持多种浏览器 from selenium import webdriver browser=webd…

    Python开发 2023年3月31日
    00
  • python获取对象属性的几种方法

    当我们拿到一个对象的引用时,如何知道这个对象是什么类型、有哪些方法呢? 1.使用type() 首先,我们来判断对象类型,使用type()函数: 基本类型都可以用type()判断: >>> type(123) <class ‘int’> >>> type(‘str’) <class ‘str’> &g…

    Python开发 2023年4月2日
    00
合作推广
合作推广
分享本页
返回顶部