Функция печати в Python ошибка - PullRequest
0 голосов
/ 09 июня 2011

Я только начал изучать Python 2.7, и, как каждый новый ученик, я все еще привыкаю к ​​синтаксису, который использует Python. Я пытался написать этот код:

name = raw_input('What is your name?\n')
print 'Hi, %s.' % (name)

Я полагаю, что вывод для вышеуказанной программы должен быть:

Hi, What is your name?

Но я получаю вывод как:

What is your name?

После нажатия клавиши enter я получаю еще один вывод:

Hi, .

В чем проблема с моим кодом?

Ответы [ 2 ]

3 голосов
/ 09 июня 2011

Нет проблем, он делает именно то, что вы говорите.

raw_input печатает строковый аргумент (как приглашение) и считывает вводимые пользователем данные до первой новой строки, возвращая текст, который он прочитал. Это именно то, что происходит (попробуйте набрать текст перед нажатием Enter). Затем вторая строка берет этот текст и помещает его в строку форматирования, печатая результат.

0 голосов
/ 11 июня 2011

Функция raw_input используется для ввода данных из приглашения.Строка, которую вы передали в функцию, будет напечатана в приглашении, после чего будет введен ваш ввод, который завершается (в смысле python) нажатием клавиши ввода.После этого будет напечатана следующая строка print 'Hi, %s.' % (name), показывающая имя, введенное пользователем в приглашении, которое, как я полагаю, в вашем случае равно None, когда вы нажимаете клавишу ввода без ввода.

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