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

[经验分享] Python学习笔记 04 数字

[复制链接]

尚未签到

发表于 2015-4-25 06:28:39 | 显示全部楼层 |阅读模式
  1、数字简介
  数字提供了标题贮存和直接访问。它是不可更改类型,也就是说变更数字的值会生成新的对象。
  (1)创建数值对象并赋值



>>> anInt = 1
>>> aLong = -9999999999999999L
>>> aFloat = 3.1415926
>>> aComplex = 1.23 + 4.5i
SyntaxError: invalid syntax
>>> aComplex = 4.33 + 1.5j
  (2)更新数字对象
  Python的对象模型与常规对象模型有些不同。更新实际上是生成了一个新的数值对象,并得到它的引用。对不可改变类型来说,你无法改变盒子的内容,但可以将指针指向一个新的盒子。
  (3)删除对象
  删除一个数值对象的引用,使用del语句即可。
  2、整型
  (1)布尔型
  (2)标准整型
  在大多数32位机器上,标准整型类型的取值范围是2的31次方减1,也就是-2147483648~2147483647。Python标准整型类型相当于C的(有符号)长整型。
  (3)长整型
  长整型类型是标准整型类型的赶集,在一个整型值后面加个L,表示这个整型是长整型。
  (4)整型和长整型的统一
  这两种整型类型正在逐渐统一为一种。



>>> 9999 ** 8
99920027994400699944002799920001L
>>> 2 >> 1/2     #传统除法
0
>>> 1.0/2.0      #浮点数除法
0.5
>>> from __future__ import division
>>> 1/2      #真正除法 未来除法
0.5
>>> 1//2      #地板除法
0
>>> 1.0//2.0
0.0
>>> -1//2
-1
  取余
  幂运算
  幂运算操作符比其右侧操作数的一元操作符优先级低,比其左侧操作数的一元操作符的优先级高。



>>> 3 ** 2
9
>>> -3 ** 2
-9
  位操作符
  Python整型支持标准位运算:取反(~)、按位与(&)、或(|)和异或(^),以及左移()
  负数会被当成正数的2进制补码处理。
  左移和右移N位等同于无溢出检查的2的N次幂运算:2**N
  对长整型来说,位操作符使用一种经修改的2进制补码形式,使得符号位可以无限向左扩展。
  取反(~)运算的优先级与数字单目操作符相同,优先级最高。
  6、内建函数与工厂函数
  (1)标准类型函数
  cmp()、str()、type()
  (2)数字类型函数
  int()、long()、float()、bool()和complex()用来将其他数值类型转换为相应的数值类型。
  (3)功能函数
  abs()、coerce()、divmod()、pow()和round()。
  abs():返回给定对象的绝对值
coerce():返回一个类型转换完毕的两个数值元素的数组。



>>> abs(-1)
1
>>> coerce(1.23-41L, 134L)
(-39.77, 134.0)
  divmod()内建函数把除法和取余运算结合起来,返回一个包含商和余数的元组。



>>> divmod(10, 3)
(3, 1)
>>> divmod(2.5, 10)
(0.0, 2.5)
  pow()两个参数,乘方运算。三个参数,乘方后取余。



>>> pow(2, 5)
32
>>> pow(2, 5, 10)
2
  round()用于对浮点型进行四舍五入运算。



>>> round(3)
3.0
>>> round(3.45)
3.0
  int()直接截去小数部分。
  floor()得到最接近原数但小于原数的整型。
  round()得到最接近原数的整型。


函数



操作



hex(num)


  将数字转换成十六进制数并以字符串形式返回。


oct(num)


  将数字转换成八进制数并以字符串形式返回。


chr(num)


  将ASCII值的数字转换成ASCII字符,范围只能是0> bool(1)
True
>>> bool(True)
True
>>> bool(False)
False
>>> bool(0)
False
  (2)十进制浮点型
  必须导入decimal模块以便使用Decimal类。



>>> from decimal import Decimal
  8、相关模块

[table]


模块



介绍



decimal


  十进制浮点运算类Decimal


array


  高效数值数组(字符、整型、浮点型)


math/cmath


  标准C库数学运算函数。常规数字运算在math,复数在cmath模块。


operator


  数字操作符的函数实现。比如operator.sub(m, n)等价于m-n


random


  多种伪随机数生成器

  核心模块:random

  randint()

  两个整数参数返回两者之间的随机整数

  randrange()

  它接受和range()函数一样的参数,随机返回
range([start,]stop[,step])的结果一项。

  uniform()

  几乎和randint()一样,返回的是两者之间的一个浮点数(不包括范围上限)

  random()

  类似uniform()只不过下限恒等于0,上限恒等于1.0

  choice()

  随机返回给定序列的一个元素。


运维网声明 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-60331-1-1.html 上篇帖子: python time 实践 下篇帖子: python删除文件
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

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

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

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

扫描微信二维码查看详情

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


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


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


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



合作伙伴: 青云cloud

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