![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=1739499879-af2MMErzquIrbRJpY7s2T8ns7bEKIlqa-0-db30f2db86f24c3b7818c5382dc41104)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27054.jpg?sign=1739499879-bZNJIqPci0WXGrfvKIRuNNgeE1ii5SlB-0-cbe9861597b867db050ac16427db3e34)
在程序实例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=1739499879-YGAAzj4O4PZ4g4dYIgmRSd6y57pwxCj7-0-afde5e4e225fca392158df902dc9f8a5)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P35_27065.jpg?sign=1739499879-AojdeAPtCnfZbFoXp0PLmQty30RX7o5u-0-5392f2f139205e1ad3877ca482aa3774)
上述变量y,由于是整数与浮点数的加法,所以结果是浮点数。此外,如果某一个变量是整数,但是最后所存储的值是浮点数,Python也会将此变量转成浮点数。
程序实例ch3_4.py:整数转换成浮点数的应用。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27467.jpg?sign=1739499879-wbVeMozur8zuIcEgWhu85oJ2iXzSq5wq-0-2a856bb424b8289084413e4c429ac2f1)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27473.jpg?sign=1739499879-lGhTP8bFGTJeV75a6O7RsvQuetBOCnSL-0-fdfd8792980f2de1cb79c98be0819547)
原先变量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=1739499879-J49waTpjTRXN2LSvkreY4YvJr7c8u47d-0-9978dc2defbc7a723c672525b4dd4b7e)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27484.jpg?sign=1739499879-FdiQg6uJCbFzduGAXzkhpXSe1CCmqyTj-0-6550f29a826b8934390653845036c5d7)
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=1739499879-YBo4AYpz4ui2PvCbKVo4JWizg6ptQSMf-0-5b3bcf39dc8d8bfd67959370f06aeab7)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P36_27494.jpg?sign=1739499879-EUGGglOn4aUdaKb0Uvi9QRtDvjGvah2H-0-fb78ea9026eca1051f5571bbc910306c)
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=1739499879-Mgc24u8M7FYjOwNkc7e1qomFTgxyQgbf-0-693413cbbd4dfff440e727137667e48b)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27903.jpg?sign=1739499879-RV3x1WIOWZfcTeFybHfUmQcpVMukW6HJ-0-881cd3da1397cf800db8314825709fa9)
3-2-5 强制数据类型的转换
有时候我们设计程序时,可以自行强制使用下列函数,转换变量的数据类型。
● int( ):将数据类型强制转换为整数。
● float( ):将数据类型强制转换为浮点数。
程序实例ch3_8.py:将浮点数强制转换为整数的运算。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27907.jpg?sign=1739499879-59sXQyeEADtdQeyJ5Ki8YlNgc4VH515V-0-a942359f46237fcd8faa6c97c33aa2d1)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27913.jpg?sign=1739499879-XLbum80AIylT7FWZiBhpz6m2DWmaTFSd-0-6545492dc24f25d9edd69401eba30752)
程序实例ch3_9.py:将整数强制转换为浮点数的运算。
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27916.jpg?sign=1739499879-gJZShY3UlL7aHKFOtWnK7A9UNQNo0ZMv-0-2074ab25147926a75b31281323797921)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P37_27922.jpg?sign=1739499879-utC3mhRNMDr10tJagZx3E2KMLDHhQiu9-0-90b88450a6cb9042d82068d82ceba7e9)
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=1739499879-ItgJUJxTd8Y12EAjRngVIs1FkWAEjGon-0-3a05a7f5a6d4391168eae9cfea142b82)
执行结果
![](https://epubservercos.yuewen.com/6532E4/17214367404798806/epubprivate/OEBPS/Images/Figure-P38_28337.jpg?sign=1739499879-WapjkylNDqpbdpIi82qH9yt27Zuk66tU-0-91534c7bf01dfb04c5c617d5c2ce0ab2)