一、Python的数字类型
1、数字常量
python数字类型在程序中如何显示(换句话说,作为常量)
数字 常量
1234,-23,0 一般整数
99999999999L 长整型数(无限大小)
1.23,3,14e-10,4E210 浮点数
0177,0x9ff,0xFF 整数的八进制和十六进制数常量
3+4j,2.0+3.0,3J 复数常量
一般来说,python的数字类型是直接的。有些编程的概念强调如下
整数和浮点数常量:
整数以十进制数字的字符串写法出现。浮点数带一个小数点,也可以加上一个科学计数标志e或E。如果编写一个带有小数点或幂的数字,Python会将它变成一个浮点数对象,并且当这个对象用在表达式中时,将启用浮点数(而不是整数)的运算法则。
长整型数常量
如果整数常量以l或L结尾,那么它就变成了Python长整型数,而且可以任意增大。python2.2和之后版本中,因为当一个整数的值操作32位时,它会自动变换为长整数型,不要着自己输入字母L。当有额外的精度需求时,Python会自动将其升级为长整数型数。
十六进制和八进制数常量
八进制常量以数字0开头,后面接数字0-7构成的字符串。十六进制数常量以0x或0X开头,后面接十六进制数字0-9和A-F。十六进制数字编写成。大小写都可以。八进制数和十六进制数常量都会产生一个整数对象,他们仅仅是特定值不同语法标识而已。
复数
python的复数常量写成实部+虚部的写法,这里虚部都是以j或者J结尾。其中,实部从技术上讲课有可无,所以可以能会单独标识虚部。从内部看来,复数都是通过一对浮点数来标识。但是对复数的所有的数字操作都会按照复数的运算法则进行。
2、内置数据工具扩展
Python处理数字对象的工具
表达式操作符
+、-、*、/、%(计算余数操作符)、**(幂运算),<<左位移,&计算位与的结果
内置数学函数
pow,abs #>> help(pow)
公用模块
random 随机数 math数学模块
名位NumPy的Python扩展提供了高级的数值编程工具。
二、Python表达式操作
表达式是处理数字的最基本工具,当一个数字(或其他对象)与操作符相结合时,Python执行时将计算得到一个值。在Python中表达式是使用通常的数学符号和操作符号写出来。is操作符测试对象身份(也就是内存地址,严格意义上的相等)。lambda创建匿名函数
更多python表达式操作符及程序可以搜索
1、混合操作所遵循的操作符优先级
遵守一般的数学计算规范,先乘除后加减。
书中5.2表的操作符中越靠后优先级越高。
2、括号分组的子表达式
有括号将表达式分组,先计算括号里的表达式,然后再将结果用于整个表达式
3、混合类型自动升级
除了在表达式中混合操作符外,也能混合数字的类型。整数和浮点
20+1.4
最后结果的类型为复杂的数字类型
三、在实际应用中的数字
1、变量和基本表达式
在python中,变量并不需要预算声明。但是在使用之前,至少要被赋值一次值。
2、str和repr显示格式
3、十六进制和八进制数
10进位制转换为8进制或者16进制函数
>>> oct(64)
'0100
>>> hex(64)
'0x40
内置函数int函数会将一个数字的字符串变换为一个整数。并可以通过定义的第二个参数来去顶变换后的数字的进制:
>>> int('0100'),int('0100',8),int('0x40',16)
(100, 64, 64)
4、其他的内置数学工具
pow
abs
import math
import random
四、其他数字类型
1、小数数字
2、集合
2.4版本的的新类型。它是其他对象的集合。
创建一个结合对象,将一个序列或其他的迭代对象传递给内置的set函数
>>> x=set('acd')
>>> y=set('bed')
>>> x
set(['a', 'c', 'd'])
>>> 'a' in x
True
>>> x|y
set(['a', 'c', 'b', 'e', 'd'])
>>> x-y
set(['a', 'c'])
>>> x&y
set(['d'])
3、布尔型
bool
True和False
4、第三方扩展