Почему я получаю странный десятичный результат при добавлении чисел с плавающей запятой в Python? [дубликат] ⇐ Python

Программы на Python
Anonymous
Почему я получаю странный десятичный результат при добавлении чисел с плавающей запятой в Python? [дубликат]

Сообщение Anonymous »

Итак, я что-то делал в Codecademy, и там есть задание по очистке списков. На данный момент у меня есть список строк, которые представляют денежную стоимость продаж. Я хочу удалить знак "$", а затем сложить их все вместе, чтобы получить общую сумму.

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

total_sales=0
sales_num=[]
for item in sales:
sales_num.append(float(item.replace("$", "")))
for num in sales_num:
total_sales += num

print(sales)
print(sales_num)
print(total_sales)
Моя первая версия в основном делала это за один шаг, но затем я разбил ее на несколько списков. Я распечатал свой sales_num, и он показывает все десятичные числа, ни одно из которых не имеет значения, превышающего два пробела после десятичной точки. Но когда я складываю их все вместе, в результате получается ответ:
Изображение

Мой вопрос: почему я получаю этот странный десятичный ответ с таким количеством знаков после запятой?

Подробнее здесь: https://stackoverflow.com/questions/790 ... -in-python

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