Задача Python "Чек"

Решаю задачу в ЯКонтест. В PyCharm выводит все верно, но при этом в ЯКонтест выдает следующую ошибку -

stdout:
/bin/sh ./build.sh 1>&2


stderr:
solution.py:5:20: E226 missing whitespace around arithmetic operator
Код не соответствует стандарту PEP8
или в нем есть синтаксические ошибки
make: *** [Makefile:2: build] Error 1

Вот мой код -

tovar = str(input())
price = int(input())
weight = int(input())
money = int(input())
price_tovar = price*weight
sdacha = money - price_tovar
print('Чек')
print(tovar, ' - ', weight, 'кг', ' - ', price, 'руб/кг', sep='')
print('Итого: ', price_tovar, 'руб', sep='')
print('Внесено: ', money, 'руб', sep='')
print('Сдача: ', sdacha, 'руб', sep='')

Вот условие - Условие и код в картинке

Подскажите, что делаю не так? В PyCharm выводится все верно.


Ответы (2 шт):

Автор решения: iglebov

Выполнил форматирование кода при помощи модуля black и получилось так:

tovar = str(input())
price = int(input())
weight = int(input())
money = int(input())
price_tovar = price * weight
sdacha = money - price_tovar
print("Чек")
print(tovar, " - ", weight, "кг", " - ", price, "руб/кг", sep="")
print("Итого: ", price_tovar, "руб", sep="")
print("Внесено: ", money, "руб", sep="")
print("Сдача: ", sdacha, "руб", sep="")

Думаю, что проблема была в 5 строке – необходимо было указать пробелы слева и справа от *.

→ Ссылка
Автор решения: CrazyElf

solution.py:5:20: E226 missing whitespace around arithmetic operator
Код не соответствует стандарту PEP8 или в нем есть синтаксические ошибки

Строка 5 это:

price_tovar = price*weight

20-й символ это *.

Если буквально перевести английский текст ошибки, то там написано: "не хватает пробелов вокруг арифметической операции". Это не ошибка, а просто не соответствие стандарту PEP8. Но Яндекс так настроил компиляцию, что это считается ошибкой.

Просто добавьте пробелы вокруг знака умножения:

price_tovar = price * weight
                   ^^^ тут
→ Ссылка