Python_data_types.png
数据类型
Python的数据类型可以大致分为如下五类:
数字(numbers)
字符(string)
元组(tuples)
列表(list)
字典(dictionary)
数字
数字类型是科学计算中最常用的类型,主要有四种:
整形(integers, int)
长整型(long integers, long)
浮点型(floating point numbers, float)
复数(complex numbers, complex)
整形与长整型
整型和长整型都用与处理整数,包括自然数和负整数,两者的不同在于处理整数的位数有别:
整型
在32位机器上整数的取值范围为~,即~;
在64位系统上,整数的位数为64位,取值范围为~,即~
长整型
跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,长整数数值不可能无限大。
注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数(解释器会自动在赋值后将超过整型范围的整数后面加L),所以如今在长整数数据后面不加字母L也不会导致严重后果了,编程也更加灵活。
浮点型
浮点型用于处理小数,在Python中浮点型具有16位精度。例如输入如下小数:
1.1234567890123456789
运行后只保留小数点以后的前16位:
1.1234567890123457
浮点型有两种表示方法,即普通的小数表示方法和科学计数法,以下两种定义方法是一样的:
a = 1000000.
b = 1e6
复数
复数由实部和虚部两部分组成,实际上实数可以看做是虚部为0的复数。Python中有两种方式定义复数:
= complex(x, y)
= x + yj
其中,x是实部,y是虚部,j是虚数单位。
布尔型(Boolean)
布尔型只有两个值,即True和False,布尔型也属于整型,布尔型通常用于逻辑判断语句。
数字类型相关操作
Python在定义变量时不需要显式指定数据类型,但是允许强制数据类型转换,各种数字类型之间均可以互相转换。
整型与浮点型:
print int(3.2), ',', int(4.68), ',', float(5)
输出为:
3 , 4 , 5.0
整型、浮点型与布尔型
print bool(3), bool(0), bool(-1), bool(0.0), bool(3.5)
print int(True), int(False)
输出为:
True False True False True
1 0
即零对应False,任何非零数字对应True。
复数与实数
实数可以转换为复数,但是复数不能转换为实数:
print complex(3.2), complex(5)
输出为:
(3.2+0j) (5+0j)
浮点数操作函数(numpy或math提供)
ceil() :向上取整;
floor():向下取整;
round():截断指定位数,采用四舍五入的方式。
字符
后文我们要讲的字符串是由一组字符构成的,对于单个字符的定义,和字符串类似,都是用单撇号、引号或三引号包括。实际上单个字符和整型之间是可以相互转换的,转换函数为:
ord():字符转为数字
chr():数字转为字符
print ord('A'), chr(65)
65 A
字符所对应的数值可以参考ASCII码表:
ASCII-Table.png
返回目录