设为首页 收藏本站
查看: 534|回复: 0

[经验分享] [Python入门及进阶笔记]Python-基础-数字处理相关模块

[复制链接]

尚未签到

发表于 2017-5-6 07:45:02 | 显示全部楼层 |阅读模式
<style>
<!--
h1, h2, h3, h4, h5, h6, p, blockquote
{margin:0;
padding:0}
body
{font-family:"Helvetica Neue",Helvetica,"Hiragino Sans GB",Arial,sans-serif;
font-size:13px;
line-height:18px;
color:#737373;
background-color:white;
margin:10px 13px 10px 13px}
table
{margin:10px 0 15px 0;
border-collapse:collapse}
td, th
{border:1px solid #ddd;
padding:3px 10px}
th
{padding:5px 10px}
a
{color:#0069d6}
a:hover
{color:#0050a3;
text-decoration:none}
a img
{border:none}
p
{margin-bottom:9px}
h1, h2, h3, h4, h5, h6
{color:#404040;
line-height:36px}
h1
{margin-bottom:18px;
font-size:30px}
h2
{font-size:24px}
h3
{font-size:18px}
h4
{font-size:16px}
h5
{font-size:14px}
h6
{font-size:13px}
hr
{margin:0 0 19px;
border:0;
border-bottom:1px solid #ccc}
blockquote
{padding:13px 13px 21px 15px;
margin-bottom:18px;
font-family:georgia,serif;
font-style:italic}
blockquote:before
{content:"\201C";
font-size:40px;
margin-left:-10px;
font-family:georgia,serif;
color:#eee}
blockquote p
{font-size:14px;
font-weight:300;
line-height:18px;
margin-bottom:0;
font-style:italic}
code, pre
{font-family:Monaco,Andale Mono,Courier New,monospace}
pre
{display:block;
padding:14px;
margin:0 0 18px;
line-height:16px;
font-size:11px;
border:1px solid #d9d9d9;
white-space:pre-wrap;
word-wrap:break-word}
pre code
{background-color:#fff;
color:#737373;
font-size:11px;
padding:0}
-->
</style>



博客迁往:新地址(点击直达)
新博客使用markdown维护,线下有版本库,自己写的所以会定时更新同步,同时提供更好的导航和阅读体验
csdn对markdown支持不好,所以旧版不会花时间进行同步修订,抱歉


---------------------

数字处理相关模块

math
  1.简介

>>> import math
>>>dir(math)          #这句可查看所有函数名列表
>>>help(math)         #查看具体定义及函数0原型

  2.常用函数

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) 角度转弧度

  另外该模块定义了两个常量:

e = 2.718281828459045
pi = 3.141592653589793

random
  1.简介
  random是用于生成随机数,我们可以利用它随机生成数字或者选择字符串

import random

  2.常用函数

random.random()
  用于生成一个随机浮点数:range[0.0,1.0)

>>> import random
>>> random.random()
0.999410896951364

random.uniform(a,b)
  用于生成一个指定范围内的随机浮点数,a,b为上下限
  只要a!=b,就会生成介于两者之间的一个浮点数,若a=b,则生成的浮点数就是a

>>> 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,报错

>>> 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

>>> random.randrange(10,100,5)
95
>>> random.randrange(10,100,5)
45

random.choice(sequence)
  从序列中获取一个随机元素,参数sequence表示一个有序类型,并不是一种特定类型,泛指list,tuple,字符串等

>>> random.choice([1,2,3,4])
1
>>> random.choice([1,2,3,4])
3
>>> random.choice('hello')
'e'

random.shuffle(x[, random])
  用于将一个列表中的元素打乱

>>> 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函数不会修改原有序列

>>> 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.使用

>>> 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
  分数类型
  构造

>>> 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)

  计算

>>> 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)

  The end!
  To be continue
  wklken
  Email: wklken@yeah.net
  Blog: http://blog.csdn.net/wklken
  2013-03-10
  转载请注明出处,谢谢

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-373563-1-1.html 上篇帖子: Python :Dive Into Python 中文版 读后感_第三章_内置数据结构 下篇帖子: [Python入门及进阶笔记]Python-魔术方法小结(方法运算符重载)
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表