ICode9

精准搜索请尝试: 精确搜索
首页 > 编程语言> 文章详细

【python标准库】数字和数学模块精心整理

2021-10-25 23:04:49  阅读:235  来源: 互联网

标签:随机数 Frac 模块 python 复数 Fraction 精心 math


文章目录

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

类成员为

realimagnumeratordenominator
实部虚部分子分母

此外还有一个函数a.limit_denominator(dMax),用于返回一个分母不大于dMax的最接近于a的分数。

>>> a = Frac(6.4)
>>> a           #由于舍入误差,所以得到的值并不正确
Fraction(3602879701896397, 562949953421312)
>>> a.limit_denominator(10000)
Fraction(32, 5)

标签:随机数,Frac,模块,python,复数,Fraction,精心,math
来源: https://blog.csdn.net/m0_37816922/article/details/120962268

本站声明: 1. iCode9 技术分享网(下文简称本站)提供的所有内容,仅供技术学习、探讨和分享;
2. 关于本站的所有留言、评论、转载及引用,纯属内容发起人的个人观点,与本站观点和立场无关;
3. 关于本站的所有言论和文字,纯属内容发起人的个人观点,与本站观点和立场无关;
4. 本站文章均是网友提供,不完全保证技术分享内容的完整性、准确性、时效性、风险性和版权归属;如您发现该文章侵犯了您的权益,可联系我们第一时间进行删除;
5. 本站为非盈利性的个人网站,所有内容不会用来进行牟利,也不会利用任何形式的广告来间接获益,纯粹是为了广大技术爱好者提供技术内容和技术思想的分享性交流网站。

专注分享技术,共同学习,共同进步。侵权联系[81616952@qq.com]

Copyright (C)ICode9.com, All Rights Reserved.

ICode9版权所有