Почему функция input () возвращает None? - PullRequest
0 голосов
/ 01 мая 2020

Так что я использую ноутбук Jupyter, и когда я запускаю код

name = input(print('What is your name?'))

Код выдаст:

What is your name?

None []

Так как я не могу скопировать и вставить прямоугольник, который приходит при использовании функции input () давайте возьмем скобки, представляющие этот прямоугольник. Затем скажите, что вы пишете John Doe в поле, затем будет показано NoneJohn Doe Почему рядом с именем и рамкой отображается слово None? Как вы это удалите? Спасибо

1 Ответ

0 голосов
/ 01 мая 2020

Я полагаю, вы хотите предложить пользователю ввести свое имя, а затем распечатать имя? если так, попробуйте это:

name = input('What is your name?')
print('Your name is '+ name)

Также с учетом этого. Input принимает в качестве аргумента строку подсказки, которую он напечатает автоматически, но print возвращает None; это то, что печатается на входе. Ваш код эквивалентен:

name = print(...) # prompt == None
ans = str(input(name))

Вместо этого используйте str.format, чтобы создать приглашение и передать его прямо на вход

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