@JewrySoft

В чем проблема этой ошибки?

Вылезает такая ошибка:
ValueError: invalid literal for int with base 10 '79999999999 4'


Код, в котором была ошибка:
def get_number(message):
    if int(message.text):
        try:
            if len(int(message.text)) == "13":
                haha = int(message.text)[12:]
                if haha < 5:
                    bot.send_message(message.chat.id, '<b>✉️Началось</b>', parse_mode='HTML')

            if len(int(message.text)) == "14":
                haha = int(message.text)[13:]
                if haha < 5:
                    bot.send_message(message.chat.id, '<b>✉️Началось</b>', parse_mode='HTML')
        except:
            bot.send_message(message.chat.id, 'Произошла ошибка!', reply_markup=home)
  • Вопрос задан
  • 120 просмотров
Решения вопроса 1
@skayer
Python software engineer
У вас есть строка '79999999999 4', которую вы пытаетесь привести к int:
int('79999999999 4')

Можно, например, убрать символ пробела в этой строке:

s = '79999999999 4'
s = s.replace(' ', '')
int(s)

Но дальше у вас тоже невалидный код:
int(message.text)[12:]

К int'у нельзя применять слайсинг `[12:]`
Ответ написан
Пригласить эксперта
Ответы на вопрос 2
sergey-gornostaev
@sergey-gornostaev Куратор тега Python
Седой и строгий
Очевидно, 10 '79999999999 4' это не число.
Ответ написан
netpastor
@netpastor
Python developer
В пробелах - в пробелах в строках, в пробелах знания питона
Ответ написан
Комментировать
Ваш ответ на вопрос

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

Войти через центр авторизации
Похожие вопросы