数据类型初识
数字
|
int(整型)
在32位机器上,整数的位数为32位,取值范围为-2**31~2**31-1,即-2147483648~2147483647
在64位系统上,整数的位数为64位,取值范围为-2**63~2**63-1,即-9223372036854775808~9223372036854775807
long(长整型) 跟C语言不同,Python的长整数没有指定位宽,即:Python没有限制长整数数值的大小,但实际上由于机器内存有限,我们使用的长整数数值不可能无限大。
注意,自从Python2.2起,如果整数发生溢出,Python会自动将整数数据转换为长整数,所以如今在长整数数据后面不加字母L也不会导致严重后果了。
float(浮点型)
浮点数用来处理实数,即带有小数的数字。类似于C语言中的double类型,占8个字节(64位),其中52位表示底,11位表示指数,剩下的一位表示符号。
complex(复数)
复数由实数部分和虚数部分组成,一般形式为x+yj,其中的x是复数的实数部分,y是复数的虚数部分,这里的x和y都是实数。
注:Python中存在小数字池:-5 ~ 257
算术运算
运算符 +
,-
,*
和 /
与其它语言一样(例如:Pascal 或 C);括号 (()
) 用于分组。
1 >>> 2 + 2
2 4
3 >>> 50 - 5*6
4 20
5 >>> (50 - 5*6) / 4
6 5.0
7 >>> 8 / 5 # division always returns a floating point number
8 1.6
整数(例如,2
, 4
, 20
)的类型是 int,带有小数部分的数字(例如,5.0
, 1.6
)的类型是 float。
除法(/
)永远返回一个浮点数。如要使用 floor 除法并且得到整数结果(丢掉任何小数部分),你可以使用 //
运算符;要计算余数你可以使用 %。
1 >>> 17 / 3 # classic division returns a float
2 5.666666666666667
3 >>>
4 >>> 17 // 3 # floor division discards the fractional part
5 5
6 >>> 17 % 3 # the % operator returns the remainder of the division
7 2
8 >>> 5 * 3 + 2 # result * divisor + remainder
9 17
使用 **
运算符计算幂乘方:
1 >>> 5 ** 2 # 5 squared
2 25
3 >>> 2 ** 7 # 2 to the power of 7
4 128
等号( '='
)用于给变量赋值。赋值之后,在下一个提示符之前不会有任何结果显示:
1 >>> width = 20
2 >>> height = 5*9
3 >>> width * height
4 900
整数和浮点数的混合计算中,整数会被转换为浮点数:
1 >>> 3 * 3.75 / 1.5
2 7.5
3 >>> 7.0 / 2
4 3.5
交互模式中,最近一个表达式的值赋给变量 :
1 >>> tax = 12.5 / 100
2 >>> price = 100.50
3 >>> price * tax
4 12.5625
5 >>> price + _
6 113.0625
7 >>> round(_, 2)
8 113.06
此变量对于用户是只读的。不要尝试给它赋值 —— 你只会创建一个独立的同名局部变量,它屏蔽了系统内置变量的魔术效果。