Пустая строка ввода вызывает ошибку в Python 3.3 - PullRequest
0 голосов
/ 27 апреля 2019

Я новичок в Python и пробую некоторые упражнения, которые я нашел в Интернете.Тот, с которым я занят, сначала требует ввода текста, за которым следуют неинтегрированные.Я застрял на целочисленном вводе, который вызывает ошибку.
Я начал с небольшого изменения кода, чтобы проверить себя, когда я впервые получил ошибку.
В конце концов изменил его резервное копирование, чтобы оно стало точно таким же, как в примере / упражненииэто, но оба привели к одной и той же ошибке в одной строке.
Возникла ошибка:

Traceback (most recent call last):
  File ************************ line 7, in <module>
    numOfGuests = int(input())
ValueError: invalid literal for int() with base 10: '' 

Я немного проверил и обнаружил, что он срабатывает, когда вход пустно согласно тому, что я прочитал, остальная часть кода должна справиться с этим.

numOfGuests = int(input())
if numOfGuests:

Я ожидал, что код снова запросит ввод, если ничего не было введено, но вместо этого получил ошибку.
Очень признателен.

1 Ответ

0 голосов
/ 27 апреля 2019

Обновление:
Мне удалось найти обходной путь, и хотя это не ответ на мой вопрос, я возьму его.
Для тех, кто заинтересован, вот что я сделал:
Я изменил:

numOfGuests=int(input())  

до:

numOfGuests=input()  

Только после того, как что-то было введено, я преобразовал это:

numOfGuests=int(numOfGuests)  

итак, последний блок:

numOfGuests=''
while not numOfGuests:
    print('How many guests will you have?')
    numOfGuests = input()
numOfGuests=int(numOfGuests)  

Буду признателен за любые идеи по его улучшению или понимание.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...