源码网商城,靠谱的源码在线交易网站 我的订单 购物车 帮助

源码网商城

python基础教程之数字处理(math)模块详解

  • 时间:2021-12-02 10:45 编辑: 来源: 阅读:
  • 扫一扫,手机访问
摘要:python基础教程之数字处理(math)模块详解
1.math简介
[u]复制代码[/u] 代码如下:
>>> import math >>>dir(math)          #这句可查看所有函数名列表 >>>help(math)         #查看具体定义及函数0原型
2.常用函数
[u]复制代码[/u] 代码如下:
ceil(x) 取顶 floor(x) 取底 fabs(x) 取绝对值 factorial (x) 阶乘 hypot(x,y)  sqrt(x*x+y*y) pow(x,y) x的y次方 sqrt(x) 开平方 log(x) log10(x) trunc(x)  截断取整数部分 isnan (x)  判断是否NaN(not a number) degree (x) 弧度转角度 radians(x) 角度转弧度
另外该模块定义了两个常量:
[u]复制代码[/u] 代码如下:
e = 2.718281828459045 pi = 3.141592653589793
random 1.简介 random是用于生成随机数,我们可以利用它随机生成数字或者选择字符串
[u]复制代码[/u] 代码如下:
import random
2.常用函数 random.random() 用于生成一个随机浮点数:range[0.0,1.0)
[u]复制代码[/u] 代码如下:
>>> import random >>> random.random() 0.999410896951364 random.uniform(a,b)
用于生成一个指定范围内的随机浮点数,a,b为上下限 只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a
[u]复制代码[/u] 代码如下:
>>> random.uniform(10,20) 13.224754825064881 >>> random.uniform(20,10) 14.104410713376437 >>> random.uniform(10,10) 10.0
random.randint(a,b) 用于生成一个指定范围内的整数,a为下限,b为上限,生成的随机整数a<=n<=b; 若a=b,则n=a;若a>b,报错
[u]复制代码[/u] 代码如下:
>>> random.uniform(10,10) 10.0 >>> random.randint(10,20) 15 >>> random.randint(10,10) 10 >>> random.randint(20,10) Traceback (most recent call last): …… ValueError: empty range for randrange() (20,11, -9)
random.randrange([start], stop, [,step]) 从指定范围内,按指定基数递增的集合中获取一个随机数,基数缺省值为1
[u]复制代码[/u] 代码如下:
>>> random.randrange(10,100,5) 95 >>> random.randrange(10,100,5) 45
random.choice(sequence) 从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等
[u]复制代码[/u] 代码如下:
>>> random.choice([1,2,3,4]) 1 >>> random.choice([1,2,3,4]) 3 >>> random.choice('hello') 'e'
random.shuffle(x[, random]) 用于将一个列表中的元素打乱
[u]复制代码[/u] 代码如下:
>>> a = [1,2,3,4,5] >>> random.shuffle(a) >>> a [4, 5, 2, 1, 3] >>> random.shuffle(a) >>> a [3, 2, 5, 1, 4]
random.sample(sequence, k) 从指定序列中随机获取k个元素作为一个片段返回,sample函数不会修改原有序列
[u]复制代码[/u] 代码如下:
>>> a = [1,2,3,4,5] >>> random.sample(a,3) [1, 4, 5] >>> random.sample(a,3) [1, 2, 5] >>> a [1, 2, 3, 4, 5]
decimal 1.简介 默认,浮点数学缺乏精确性 decimal 模块提供了一个 Decimal 数据类型用于浮点数计算。相比内置的二进制浮点数实现 float这个类型有助于 金融应用和其它需要精确十进制表达的场合, 控制精度, 控制舍入以适应法律或者规定要求, 确保十进制数位精度,或者用户希望计算结果与手算相符的场合。 Decimal 重现了手工的数学运算,这就确保了二进制浮点数无法精确保有的数据精度。 高精度使 Decimal 可以执行二进制浮点数无法进行的模运算和等值测试。 2.使用
[u]复制代码[/u] 代码如下:
>>> from decimal import Decimal >>> Decimal('0.1') / Decimal('0.3') Decimal('0.3333333333333333333333333333') >>> from decimal import getcontext >>> getcontext().prec = 4 #设置全局精度 >>> Decimal('0.1') / Decimal('0.3') Decimal('0.3333')   
fractions 分数类型 构造
[u]复制代码[/u] 代码如下:
>>> from fractions import Fraction >>> Fraction(16, -10)  #分子分母 Fraction(-8, 5) >>> Fraction(123)   #分子 Fraction(123, 1) >>> Fraction('3/7')   #字符串分数 Fraction(3, 7) >>> Fraction('-.125')  #字符串浮点数 Fraction(-1, 8) >>> Fraction(2.25)  #浮点数 Fraction(9, 4) >>> from decimal import Decimal >>> Fraction(Decimal('1.1')) #Decimal Fraction(11, 10)
计算
[u]复制代码[/u] 代码如下:
>>> from fractions import Fraction >>> a = Fraction(1,2) >>> a Fraction(1, 2) >>> b = Fraction('1/3') >>> b Fraction(1, 3) >>> a + b Fraction(5, 6) >>> a - b Fraction(1, 6)
  • 全部评论(0)
联系客服
客服电话:
400-000-3129
微信版

扫一扫进微信版
返回顶部