math模块及使用方式
在数学之中,除了加减乘除四则运算之外——这是小学数学——还有其它更多的运算,比如乘方、开方、对数运算等等,要实现这些运算,需要用到 Python 中的一个模块:Math
模块(module)是 Python 中非常重要的东西,你可以把它理解为 Python 的扩展工具。换言之,Python 默认情况下提供了一些可用的东西,但是这些默认情况下提供的还远远不能满足编程实践的需要,于是就有人专门制作了另外一些工具。这些工具被称之为“模块”
任何一个 Pythoner 都可以编写模块,并且把这些模块放到网上供他人来使用。
当安装好 Python 之后,就有一些模块默认安装了,这个称之为“标准库”,“标准库”中的模块不需要安装,就可以直接使用。
如果没有纳入标准库的模块,需要安装之后才能使用。模块的安装方法,我特别推荐使用 pip 来安装。这里仅仅提一下,后面会专门进行讲述,性急的看官可以自己 google。
使用 math 模块
math 模块是标准库中的,所以不用安装,可以直接使用。使用方法是:
|
1
|
>>> import math |
用 import 就将 math 模块引用过来了,下面就可以使用这个模块提供的工具了。比如,要得到圆周率:
|
1
2
|
>>> math.pi3.141592653589793 |
这个模块都能做哪些事情呢?可以用下面的方法看到:
|
1
2
|
>>> dir(math)['__doc__', '__name__', '__package__', 'acos', 'acosh', 'asin', 'asinh', 'atan', 'atan2', 'atanh', 'ceil', 'copysign', 'cos', 'cosh', 'degrees', 'e', 'erf', 'erfc', 'exp', 'expm1', 'fabs', 'factorial', 'floor', 'fmod', 'frexp', 'fsum', 'gamma', 'hypot', 'isinf', 'isnan', 'ldexp', 'lgamma', 'log', 'log10', 'log1p', 'modf', 'pi', 'pow', 'radians', 'sin', 'sinh', 'sqrt', 'tan', 'tanh', 'trunc'] |
dir(module)是一个非常有用的指令,可以通过它查看任何模块中所包含的工具。从上面的列表中就可以看出,在 math 模块中,可以计算正 sin(a),cos(a),sqrt(a)......
这些我们称之为函数,也就是在模块 math 中提供了各类计算的函数,比如计算乘方,可以使用 pow 函数。但是,怎么用呢?
Python 是一个非常周到的姑娘,她早就提供了一个命令,让我们来查看每个函数的使用方法。
|
1
|
>>> help(math.pow) |
在交互模式下输入上面的指令,然后回车,看到下面的信息:
|
1
2
3
4
5
6
7
|
Help on built-in function pow in module math: pow(...) pow(x, y) Return x**y (x to the power of y). |
这里展示了 math 模块中的 pow 函数的使用方法和相关说明。
第一行意思是说这里是 math 模块的内建函数 pow 帮助信息(所谓 built-in,称之为内建函数,是说这个函数是 Python 默认就有的)
第三行,表示这个函数的参数,有两个,也是函数的调用方式
第四行,是对函数的说明,返回 x**y 的结果,并且在后面解释了 x**y 的含义。
最后,按 q 键返回到 Python 交互模式
从上面看到了一个额外的信息,就是 pow 函数和 x**y 是等效的,都是计算 x 的 y 次方。
|
1
2
3
4
5
6
|
>>> 4**216>>> math.pow(4,2)16.0>>> 4*28 |
特别注意,4**2 和 4*2 是有很大区别的。
用类似的方法,可以查看 math 模块中的任何一个函数的使用方法。
关于“函数”的问题,在这里不做深入阐述,看管姑且按照自己在数学中所学到去理解。后面会有专门研究函数的章节。
下面是几个常用的 math 模块中函数举例,看官可以结合自己调试的进行比照。
|
1
2
3
4
5
6
7
8
9
10
11
12
13
14
|
>>> math.sqrt(9)3.0>>> math.floor(3.14)3.0>>> math.floor(3.92)3.0>>> math.fabs(-2) # 等价于 abs(-2)2.0>>> abs(-2)2>>> math.fmod(5,3) # 等价于 5%32.0>>> 5%32 |
几个常见函数
有几个常用的函数,列一下,如果记不住也不要紧,知道有这些就好了,用的时候就 google。
求绝对值
|
1
2
3
4
5
6
|
>>> abs(10)10>>> abs(-10)10>>> abs(-1.2)1.2 |
四舍五入
|
1
2
3
4
5
6
7
|
>>> round(1.234)1.0>>> round(1.234,2)1.23>>> # 如果不清楚这个函数的用法,可以使用下面方法看帮助信息>>> help(round) |
|
1
2
3
4
5
6
7
|
Help on built-in function round in module __builtin__:round(...) round(number[, ndigits]) -> floating point number Round a number to a given precision in decimal digits (default 0 digits). This always returns a floating point number. Precision may be negative. |
math模块及使用方式的更多相关文章
- Python语法速查: 5. 运算符、math模块、表达式
返回目录 (1)一些较容易搞错的运算符 一般简单的如加减乘除之类的运算符就不写了,这里主要列些一些容易搞错或忘记的运算符.运算符不仅仅只有号,有一些英文单词如 in, and 之类,也是运算符,并不是 ...
- 第12.3节 Python math模块导览
math 模块提供对浮点数学的底层C库函数的访问,常用的成员包括: math.ceil(x):返回 x 的上限,即大于或者等于 x 的最小整数 math.floor(x):返回 x 的向下取整,小于或 ...
- python之math模块
1.math简介 >>>import math #导入math模块 >>>dir(math) #这句可查看所有函数名列表 >>>help(math ...
- 2.2Python数据处理篇之---math模块的数学函数
目录 目录 前言 (一)一览表 1.基本函数 2.对数函数 3.三角函数 4.角度的切换 5.双曲函数 6.math定义的常数 (二)实例 目录 前言 math模块是基础的python数学函数模块,是 ...
- python标准库介绍——6 math模块详解
==math 模块== ``math`` 模块实现了许多对浮点数的数学运算函数. 这些函数一般是对平台 C 库中同名函数的简单封装, 所以一般情况下, 不同平台下计算的结果可能稍微地有所不同, 有时候 ...
- Python:基本运算、基本函数(包括复数)、Math模块、NumPy模块
基本运算 x**2 : x^2 若x是mat矩阵,那就表示x内每个元素求平方 inf:表示正无穷 逻辑运算符:and,or,not 字典的get方法 a.get(k,d) 1 1 get相当于一条if ...
- Python常用的一些内建函数和math模块函数
一:Python内建函数 # abs取绝对值 num = -10 print(abs(num)) # max 求最大值 print(max(6, 9, 2, 12, 8)) # min求最小值 pri ...
- 微软企业库5.0 学习之路——第八步、使用Configuration Setting模块等多种方式分类管理企业库配置信息
在介绍完企业库几个常用模块后,我今天要对企业库的配置文件进行处理,缘由是我打开web.config想进行一些配置的时候发现web.config已经变的异常的臃肿(大量的企业库配置信息充斥其中),所以决 ...
- Python学习笔记:math模块(数学),random模块(随机数)
math模块 math模块用于数学意义上的一些计算,常用的方法有: math.pi:PI的值(3.141592653589793). math.floor(x):返回一个小于等于x的最大整数(浮点类型 ...
随机推荐
- 【转载】mysql 四种隔离级别分析
sql标准中,有四种隔离级别,各个离级别都有各自的规则,隔离级别越低,允许并发越大,消耗的资源越少,但是越不安全,下面就mysql数据库来分别介绍一下(每个存储引擎实施的隔离级别会有稍微的不同)mys ...
- 关于Oracle表空间数据文件自增长的一些默认选项
昨天,一个同事请教了一些关于Oracle表空间数据文件自增长的问题,解答过程中顺便整理起来,以后其他同事有同样的疑问时可以直接查阅. 实验内容: 创建MYTEST表空间,默认不开启自增长. 给MYTE ...
- VSC 使用Git进行版本控制
Visual Studio Code 使用Git进行版本控制 请确保你安装了最新的VS Code.http://code.visualstudio.com/ 请确保安装了最新版的Git.https:/ ...
- Could not locate device support files.《This iPhone 5 (Model A1429) is running iOS 7.0.4 (11B554a), which may not be supported by this version of Xcode.》-b
原因:Xcode8 不支持 iOS7 解决方法: 在“/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/De ...
- ascx aspx ashx asmx 文件的作用
ascx aspx ashx asmx 文件的作用 ascx: Ascx 是给予Web的用户控件(UserControl),一般是用来重用的,不能直接被访问只能插入aspx页面呈现.头部文件<% ...
- Ubuntu 查看文件以及磁盘空间大小命令df
(1)查看文件大小 查看当前文件夹下所有文件大小(包括子文件夹) du -sh # du -h 15M ./package 16K ./.fontconfig 4.0K ...
- QT模态弹出对话框
QDialog QWidget 默认show()都是非模态 如果需要模态显示, QDialog ==> setModal(true); show(); exec(); QWidget ==> ...
- TesserOCR训练
1.CMD命令行进入 图片目录.运行: tesseract.exe testcode.tif testcode batch.nochop makebox 注意:上面的 testcode 名称 必须保持 ...
- 电脑问题交流QQ群
各种电脑问题交流QQ群号 164853622 系统重装 系统恢复 系统出问题 电脑主页 修改 主页 搜狗 软件卸载 顽固 病毒 讨论
- 解决asp.net mvc中*.resx资源文件访问报错
个人笔记 问题重现 在asp.net mvc中,使用资源文件会出现一个问题,例如: 紧接着我进入视图界面,输入下面代码: <a href="javascript:void(0);&qu ...