概述
本文已整合到这里:Python内置数学模块全整理,易查易阅
文章目录
- math模块
- 复数运算模块cmath
- 精确计算模块decimal
- 伪随机数模块random
- 简单的统计模块statistics
- 分数模块fractions
math模块
提供了一些基础的计算功能,除了常用的数学函数如三角函数、幂函数等,还包括各种取整函数:math模块详解
复数运算模块cmath
即基础的复数运算包,和math有很多同名函数,但math
中的函数没法进行复数计算。在python中,创建复数的方法是
x = 1+1j
详情可见:复数运算模块cmath
精确计算模块decimal
在python中比较常见的问题是
>>> 0.333333333333333333333*3
1.0
>>> 0.999999999999999999999999
1.0
如果这可以算作程序的“自作聪明”的话,那么下面这个就是完全没有必要的误差了。
>>> 0.1*3-0.3
5.551115123125783e-17
decimal
就为了解决这个问题:精确计算模块decimal
伪随机数模块random
random模块用于生成伪随机数,之所以有个伪
字,是因为计算机没法生成真正的随机数。所谓伪随机数,无非是把一个初始值变得面目全非,从而很像随机数
。
伪随机数模块random详解
简单的统计模块statistics
Python自带的统计学工具,功能很弱,但初学者学习一下也是好的。
下面的函数输入均为list。
中心特征 | |
---|---|
平均数 | 算术平均数mean ,浮点算数平均数fmean , 几何平均数geometric_mean ,调和平均数harmonic_mean |
中位数 | median ,低中位数median_low ,高中位数median_high ,分组中位数median_grouped |
众数 | mode ,众数列表multimode |
标准差 | 总体pstdev ,样本variance |
方差 | 总体pstdev ,样本stdev |
quantiles() | 将数据以相等的概率分为多个间隔。 |
covariance() | 样本协方差。 |
correlation() | 皮尔逊相关系数。 |
linear_regression() | 简单线性回归的斜率和截距 |
分数模块fractions
分数模块中主要实现了分数类Fraction
,其构造函数被重载成数个,分别可以通过浮点数、两个整数或者字符串等方法,并且对运算符进行了重载。
from fractions import Fraction as Frac
>>> a = Frac("3/5")
>>> a
Fraction(3, 5)
>>> print(a.as_integer_ratio()) #将分数输出为元组
(3, 5)
>>> b = Frac(5,3)
>>> b
Fraction(5, 3)
>>> c = Frac(2.5)
>>> c
Fraction(5, 2)
>>> print(a+c)
31/10
>>> print(b/c)
2/3
类成员为
real | imag | numerator | denominator |
---|---|---|---|
实部 | 虚部 | 分子 | 分母 |
此外还有一个函数a.limit_denominator(dMax)
,用于返回一个分母不大于dMax
的最接近于a
的分数。
>>> a = Frac(6.4)
>>> a #由于舍入误差,所以得到的值并不正确
Fraction(3602879701896397, 562949953421312)
>>> a.limit_denominator(10000)
Fraction(32, 5)
最后
以上就是懦弱豌豆为你收集整理的python标准库中的6个数学模块的全部内容,希望文章能够帮你解决python标准库中的6个数学模块所遇到的程序开发问题。
如果觉得靠谱客网站的内容还不错,欢迎将靠谱客网站推荐给程序员好友。
本图文内容来源于网友提供,作为学习参考使用,或来自网络收集整理,版权属于原作者所有。
发表评论 取消回复