#获取用户的一个小数并提取整数部分
a = eval(input('请输入一个小数'))
b = int(a)
print('{}的小数部分是{}'.format(a,a-b))
=
请输入一个小数2.3
2.3的小数部分是0.2999999999999998
疑惑:这个程序为什么得出的结果不正确
参考一下这个
https://blog.csdn.net/qq_38239282/article/details/105743718
计算机中保存数字的寄存器是使用二进制来保存数字的,有的有限十进制小数只能使用无限的二进制小数表示,因此浮点数计算存在误差,可以使用decimal模块解决
from decimal import Decimal
#获取用户的一个小数并提取整数部分
a = Decimal(input('请输入一个小数'))
b = int(a)
print('{}的小数部分是{}'.format(a,a-b))