@RafaelkoSE

ValueError: invalid literal for int() with base 10: «['1', '1']»?

Необходимо ввести два числа через пробел и проверить их
S, P = int(str(input().split()))
if S >= 0:
    if S <= 2000:
        if P>= 0:
            if P<= 2000:
                print(S, P)

else:
    print('Введите корректное число!')

При попытке ввода любых чисел (на примере двух единиц):
ValueError: invalid literal for int() with base 10: "['1', '1']"
  • Вопрос задан
  • 2093 просмотра
Решения вопроса 1
bonv
@bonv
S, P = int(str(input().split()))

В данном случае int() применяется к списку ['1', '1']. Это не будет работать.

Можно сделать так (применить int() к каждому элементу списка)
S, P = map(int, input().split())
Ответ написан
Комментировать
Пригласить эксперта
Ответы на вопрос 1
dimonchik2013
@dimonchik2013
non progredi est regredi
S, P = str(input().split())

потом уже в int их

или через list comprenetions
Ответ написан
Комментировать
Ваш ответ на вопрос

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

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