Python入门很简单
上QQ阅读APP看书,第一时间看更新

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()函数输出执行结果。