0,1 <= 0,10 возвращает ложьPython

Программы на Python
Anonymous
0,1 <= 0,10 возвращает ложь

Сообщение Anonymous »

Я работаю над сценарием Python и не получаю того, чего ожидаю при сравнении значений после запятой. Я извлекаю одно значение из запроса SQL, который читает от 0,10 до 40 десятичных знаков. Когда я сравниваю его с сгенерированным Python 0.1, он говорит мне, что Python 0.1 больше, чем SQL 0.1. Я знаю, что это как-то связано с округлением чисел, но как мне это решить. Я мог бы просто добавить 0,0000001 к номеру SQL, но я бы предпочел более чистый метод. См. мои примеры ниже.

Код: Выделить всё

print(f"Dist: {round(abs(dist),2):.40f}, t.min_dbv: {round(0.10,2):.40f}")
print(f"Test 1: {round(abs(dist),2) 

Подробнее здесь: [url]https://stackoverflow.com/questions/78237964/0-1-0-10-is-returning-false[/url]

Вернуться в «Python»