【发布时间】:2016-05-30 10:02:17
【问题描述】:
我有一个计算问题。
main_value = 4.4789
现在我想将此值与用户输入值进行比较
user_input = 4.5
if main_value >= user_input:
print('yes')
else:
print('no')
问题是我在 GUI 中以个位数精度显示 main_value (4.4789 被四舍五入并且显示值 = 4.5)
所以当进行比较时显示显示 4.5 但打印 NO...
我该如何解决这个问题!!!
我应该使用 Decimal 模块(请举个例子)还是任何其他简单的方法??
谢谢!!
【问题讨论】:
-
你用的是什么图形用户界面?
-
PyQt,来自 QtDesigner 的 .ui 文件并导入它
-
但是该方法将值四舍五入。我不想对值进行四舍五入。显示原样,保留 1 位小数。
-
如果你停留在 Python on float 的自动回合下,可以使用
str(f)[:str(f).index('.')+2]。
标签: python-3.x floating-point decimal