a=135
b=243
c=a/b
d=('%.2f'%c)
print(d)
e=float(input())
if e==d:
print('对')
else:
print('不对')
d='0.56'而e=0.56,一个字符串一个float类型
d=float(d)转化一下再比较就可以了
【温馨提示:若能帮到您,望给个采纳该答案,谢谢】
1、原因
d=('%.2f'%c),这个表达式输出的d值为字符串
可通过这个函数判断数据类型:type(d)
2、调整:d转为float再进行对比
a=135
b=243
c=a/b
d=('%.2f'%c)
print(d)
print(type(d))
e=0.56
if float(e)==float(d):
print('对')
else:
print('不对')
3、效果如下
浮点数的比较最好不要用==,因为存在存储精度问题,用两数的差在合理的误差范围内比较合适
因为d是个字符串
你的Input不要强制转换为float,直接赋值给e即可