![Python王者归来](https://wfqqreader-1252317822.image.myqcloud.com/cover/412/31794412/b_31794412.jpg)
3-2 数值数据类型
Python在定义变量时可以不用设定这个变量的数据类型,未来如果这个变量内容是整数,这个变量就是整数(int)数据类型,如果这个变量内容是浮点数,这个变量就是浮点数(float)数据类型。整数与浮点数最大的区别是,整数不含小数点,浮点数含小数点。
程序实例ch3_2.py:测试浮点数。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27031.jpg?sign=1739491028-Fbr1F7bWGyhRDsOGxIXJaILKFI8CaXVt-0-4edb69444d7e4702c36179e357716733)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27054.jpg?sign=1739491028-5EcGZJabJNDSKx6AhgVupu4Tl6oMlb3j-0-d05ed6c280033786e7720d3d99082901)
在程序实例ch3_1.py中,x变数的值是“10”,表示x变量是整数变量,在这个实例中,x变量的值是“10.0”,表示x变量是浮点数变量。
3-2-1 整数与浮点数的运算
Python程序设计时不同数据类型也可以执行运算,程序设计时常会发生整数与浮点数之间的数据运算,Python具有简单自动转换能力,在计算时会将整数转换为浮点数再执行运算。
程序实例ch3_3.py:不同数据类型的运算。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27059.jpg?sign=1739491028-wTt42CSiaDugNrpXuQpUWNQ5Ymjm6iTX-0-2ded99292e9e9a35f26e2c2db3173829)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27065.jpg?sign=1739491028-0d2RfLtwldkAt3IJW6BVf2y5TLG9i2cX-0-6bd575d6322dfc7d9dc3ec84cd5d99df)
上述变量y,由于是整数与浮点数的加法,所以结果是浮点数。此外,如果某一个变量是整数,但是最后所存储的值是浮点数,Python也会将此变量转成浮点数。
程序实例ch3_4.py:整数转换成浮点数的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27467.jpg?sign=1739491028-Sm7lzfjFNw0uBXXaSxkC1g9k0A92Hbth-0-61fc665a3db9ea11661b15bc3dce09e5)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27473.jpg?sign=1739491028-a9zmjilXrexYVDy0mSPpk8MA3iGL7J29-0-ddb5f43ead9fbf1418761f7fb0ebbff8)
原先变量x所存储的值是整数,所以列出是整数。后来存储了浮点数,所以列出是浮点数。
3-2-2 2进位整数与函数bin( )
我们可以用2进位方式代表整数,Python中定义凡是0b开头的数字,代表这是2进位的整数。
bin( )函数可以将一般数字转换为2进位。
程序实例ch3_5.py:将10进位数值与2进位数值互转的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27478.jpg?sign=1739491028-M4xyoc04cnkIZhVAuT3Tjik9Cu594nRh-0-ab1cd79278963df8fe94fbae9e46d3f7)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27484.jpg?sign=1739491028-dVdyOl8Ebrl7p12Omdqyf9vVwicJZiPp-0-6bded86f6227b82369283606a04dbd66)
3-2-3 8进位整数
我们可以用8进位方式代表整数,Python中定义凡是0o开头的数字,代表这是8进位的整数。
oct( )函数可以将一般数字转换为8进位。
程序实例ch3_6.py:将10进位数值与8进位数值互转的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27488.jpg?sign=1739491028-H1LZ35kvwma9Tc7yssCXVRBVF6emEI6J-0-b6bbcbdc2b15a87c0c582d64804d2351)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27494.jpg?sign=1739491028-AxN9wHTzpwinP63jsWBwmPBgQV6rcpDt-0-9f37761db515f24d42ffff091716569c)
3-2-4 16进位整数
我们可以用16进位方式代表整数,Python中定义凡是0x开头的数字,代表这是16进位的整数。
hex( )函数可以将一般数字转换为16进位。
程序实例ch3_7.py:将10进位数值与16进位数值互转的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27897.jpg?sign=1739491028-1vHSJjzxaONpa3g1yfJuJZ1AUubXk8z5-0-14fcbbd5165d1d67b5962ce9c96715e0)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27903.jpg?sign=1739491028-bqQSyj1BzyJE3uvyng7SNjU76aIhPQne-0-164e539d9d99a173e7949128f110dda0)
3-2-5 强制数据类型的转换
有时候我们设计程序时,可以自行强制使用下列函数,转换变量的数据类型。
● int( ):将数据类型强制转换为整数。
● float( ):将数据类型强制转换为浮点数。
程序实例ch3_8.py:将浮点数强制转换为整数的运算。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27907.jpg?sign=1739491028-9bdoSph8Kqe7aXvGkvTZkJoZu30JEKpy-0-dd3bcc3dae1e675038cf2dd1694a4e21)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27913.jpg?sign=1739491028-DG7aZnTbeyIccFEcWBt2SfFu1yojb4Za-0-8d3f38b0c0ba622bd2dc6ed5f29d2e29)
程序实例ch3_9.py:将整数强制转换为浮点数的运算。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27916.jpg?sign=1739491028-HfS3ngcZCM90DNQ3tfC8lGUeAJAbLo28-0-f8ba460078b01edd5df3bf03b35c359f)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27922.jpg?sign=1739491028-SrnI9Mrx8espporGGGrc9ftRr4sprY44-0-c5bdf84bbca8b0abc34096f4dfcfe4eb)
3-2-6 数值运算常用的函数
下列是数值运算时常用的函数。
● abs( ):计算绝对值。
● pow(x,y):返回x的y次方。
● round( ):返回五舍六入,留意不是四舍五入。
程序实例ch3_10.py:abs( )、pow( )、round( )函数的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P38_28331.jpg?sign=1739491028-kUHdcemfOJh9H0gKGqCPcbGQeh3dcfjF-0-473cc216623a3899427a6793005b86c1)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P38_28337.jpg?sign=1739491028-LZcAfaalDu9aLVhUuErCZVUOihlYTbgJ-0-7912229406994ecb8007ce93dc0e84e4)