@MrBrainop
Начал изучать html, Python и QT Designer

Python ошибка invalid literal for int() with base 10: ''?

Проблема в том что если в одну из переменных я ничего не записываю то получаю ошибку. Как решить?!
cash = input('1 Число: ')
cash2 = input('2 Число: ')
cash3 = input('3 Число: ')
cash4 = input('4 Число: ')
cash5 = input('5 Число: ')

mon = (int(cash) + int(cash2) + int(cash3) + int(cash4) + int(cash5))
print(mon)


Сама ошибка:
mon = (int(cash) + int(cash2) + int(cash3) + int(cash4) + int(cash5))
ValueError: invalid literal for int() with base 10: ''
  • Вопрос задан
  • 224 просмотра
Решения вопроса 1
fox_12
@fox_12 Куратор тега Python
Расставляю биты, управляю заряженными частицами
Как решить?!

Суммировать только значения, являющиеся числами:

mon = sum(map(int, filter(lambda x: x.isdigit(), [cash, cash2, cash3, cash4, cash5])))
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
@kirillinyakin
Значит, Вы пытаетесь преобразовать в целое число пустую строку
Ответ написан
@ODNik
Вы пытаетесь пустую строку преобразовать в целое число, а это даже звучит глупо. "Решить проблему" можно с помощью условий( если пустая строка, то присвоить 0, например) или конструкции try except.
Ответ написан
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы
от 80 000 до 200 000 ₽
AIR Production Москва
от 170 000 до 200 000 ₽
от 2 500 до 4 000 $
25 нояб. 2020, в 19:58
35000 руб./за проект
25 нояб. 2020, в 19:13
1000 руб./в час
25 нояб. 2020, в 18:34
100000 руб./за проект