标签:
数字提供了标量贮存和直接访问。它是不可更改类型,也就是说变更数字的值会生产新的对象。Python支持多种数字类型:整型,长整型,布尔型,双精度浮点型,十进制浮点行和复数
更新:由于数值对象是不可便类型,所以无法‘更新’,只能创建一个新对象,并将引用指向它。
删除:按照Python的法则,无法真正删除一个数值对象,仅仅是不在使用它而已。如果你确定想删除一个数值对象的引用,使用del
语句即可,删除对象的引用后,就不能在使用这个引用了,除非重新给它赋一个新值。如果试图使用已经删除的对象引用,会触发一个NameError的异常。
>>> a = 10 >>> del a >>> a Traceback (most recent call last): File "<stdin>", line 1, in <module> NameError: name ‘a‘ is not defined
该类型的取值范围只有2个值,True和False
Python标准整形类型是最通用的数字类型,Python的标准整形等价于C的有符号的长整型,整形一般以十进制表示,python也支持八进制(数字0开始)和十六进制(0x或者0X开始)
Python能轻松表达很大的整型。在一个整型值后面加上L(大小写都可以,推荐大写),表示整型是长整型
Python的浮点型类似C语言中的double类型,是双精度浮点型,可以用直接的十进制或科学计数法标示。每个浮点型占8个字节(64位),其中52个位用于标示底,11个位用于标示指数,剩下一个位标示符号,然而,实际精度依赖于机器架构和创建Python解释器的编译器。浮点值通常都有一个小数和一个后缀的e(大小写不区分),在e和指数之间用正(+)或(-)标示指数的正负(正数可以省略符号)。
Python中有关复数的几个概念
属性 | 描述 |
---|---|
num.real | 复数的实数 |
num.imag | 复数的虚数 |
num.conjugate() | 返回该复数的共轭复数 |
>>> aComplex = -8.33-1.47j >>> aComplex (-8.33-1.47j) >>> aComplex.real -8.33 >>> aComplex.imag -1.47 >>> aComplex.conjugate() (-8.33+1.47j)
如果是整型除法,传统除法会舍去小数部分,返回一个整型(底板除)。如果操作数之一是浮点型,则执行真正的除法。
>>> 3/5 0 >>> 3.0/5 0.6 >>> 3.0/5.0 0.6 >>>
总是返回真实的商,不管操作数是整型还是浮点型,在未来版本的python中,这将是除法运算的标准行为。现阶段可一通过from futureimport division指令做到
>>> from __future__ import division >>> 1/2 0.5 >>> 1.0/2.0 0.5 >>> 1.0/2 0.5
使用//
来执行地板除;//
不管操作数是何种数值类型,总是舍去小数部分,返回数字序列种比真正的商小的最接近的数字
>>> 1 // 2 0 >>> 1.0//2.0 0.0 >>> 1.0//2 0.0
Python整型支持标准位运算:取反(~),按位与(&),或(|)和异或(^),以及左移(<<)和右移(>>)。python这样处理位运算
cmp(a,b):比较2个数的大小,a<b,返回-1;a=b,返回0;a>b,返回1
str():将数字转换成字符串
type():返回数字对象的类型;type(num).__name__
类(工厂函数) | 操作 |
---|---|
bool(obj) | 返回obj对象的布尔值,也就是obj.nonzero()方法的返回值 |
int(obj,base=10) | 返回一个字符串或数值对象的整型表示 |
long(obj,base=10) | 返回一个字符串或数值对象的长整型表示 |
float(obj) | 返回一个字符串或数值对象的浮点型表示 |
complex(str) or complex(real,imag=0.0) | 返回一个字符串的负数表示,或者根据给定的实数(可选的虚数部分)生成一个复数对象 |
类(功能函数) | 操作 |
---|---|
abs() | 返回给定参数的绝对值,如果参数是一个复数,那么返回math.sqrt(num.real2 + num.imag2) |
coerce() | 返回类型转换完毕的两个数值元素的元组 |
divmod() | 把除法和取余运算结合起来,返回一个包含商和余数的元组,整数返回地板除和取余操作的结果。对浮点型来说,商是math.floor(num1/num2),对复数来说,商部分是math.floor((num1/num2).real) |
pow() | 同(**)操作,但是它接受第三个参数,如果有第三个参数,先进行指数运算,然后和第三个参数进行取余运算 |
round() | 对浮点型进行四舍五入运算,它有一个可选的小数位作为第二个参数,如果有这个第二个参数告诉round()函数,将结果精确到小数点后指定位数 |
>>> import math >>> for eachNum in range(5): ... print round(math.pi,eachNum) ... 3.0 3.1 3.14 3.142 3.1416
标签:
原文地址:http://www.cnblogs.com/mrylong/p/5066806.html