3-2 数值数据类型
Python在声明变量时可以不用设置这个变量的数据类型,如果这个变量内容是放整数,这个变量就是整数(int)数据类型,如果这个变量内容是放浮点数,这个变量就是浮点数数据类型。整数与浮点数最大的区别是:整数不含小数点,浮点数含小数点。
程序实例ch3_2.py:测试浮点数。
执行结果
在程序实例ch3_1.py中,x变量的值是10,列出x变量是整型变量,在这个实例中,x变量的值是10.0,列出x变量是浮点型变量。
3-2-1 整数与浮点数的运算
Python程序设计时不相同的数据类型也可以执行运算,程序设计时常会发生整数与浮点数之间的数据运算,Python具有简单的自动转换能力,在计算时会将整数转换为浮点数再执行运算。
程序实例ch3_3.py:不同数据类型的运算。
执行结果
上述变量y,由于是整数与浮点数的加法,所以结果是浮点数。此外,某一个变量如果是整数,但是如果最后所存储的值是浮点数,Python也会将此变量转换成浮点数。
程序实例ch3_4.py:整数转换成浮点数的应用。
执行结果
原先变量x所存储的值是整数,所以列出的是整数。后来存储了浮点数,所以列出的是浮点数。
3-2-2 二进制整数与函数bin()
我们可以用二进制方式代表整数,Python中定义凡是以0b开头的数字,代表这是二进制的整数。
bin()函数可以将一般数字转换为二进制。
程序实例ch3_5.py:将十进制数值与二进制数值互转的应用。
执行结果
3-2-3 八进制整数
我们可以用八进制方式代表整数,Python中定义凡是以0o开头的数字,代表这是八进制的整数。
oct()函数可以将一般数字转换为八进制。
程序实例ch3_6.py:将十进制数值与八进制数值互转的应用。
执行结果
3-2-4 十六进制整数
我们可以用十六进制方式代表整数,Python中定义凡是以0x开头的数字,代表这是十六进制的整数。
hex()函数可以将一般数字转换为十六进制。
程序实例ch3_7.py:将十六进制数值与十进制数值互转的应用。
执行结果
3-2-5 强制数据类型的转换
有时候我们设计程序时,可以自行强制使用下列函数,转换变量的数据类型。
int():将数据类型强制转换为整数。
float():将数据类型强制转换为浮点数。
程序实例ch3_8.py:将浮点数强制转换为整数的运算。
执行结果
程序实例ch3_9.py:将整数强制转换为浮点数的运算。
执行结果
3-2-6 数值运算常用的函数
下列是数值运算时常用的函数。
(1)abs():计算绝对值。
(2)pow(x,y):返回x的y次方。
(3)round():这是采用演算法则的Bankers Rounding概念,如果处理位数左边是奇数,则使用四舍五入;如果处理位数左边是偶数,则使用五舍六入,例如,round(1.5)=2,round(2.5)=2。
程序实例ch3_10.py:abs()、pow()、round()函数的应用。
执行结果
3-2-7 eval()函数
eval()函数可执行一个字符串的数学表达式,然后返回数学表达式的值。
程序实例ch3_10_1.py:使用eval()函数执行计算结果的应用。
执行结果
这个功能很有帮助,例如,要设计计算器程序(Calculator),可以使用字符串方式记录所输入的计算式,再直接使用eval()函数输出执行结果。