Ввести имя в Python

Как ввести имя в Python — учимся вводить данные по запросу

Попрактикуемся в решении простых но интересных задач:

  • Узнаем, как ввести имя в Python;
  • Научимся выводить полученное имя на экран;

Как ввести имя в Python

1. Выведем запрос на получение имени

Чтобы пользователь не пребывал в растерянности при виде пустой строки, давайте попросим его ввести имя. Для этого вызовем функцию print(), которой передадим в качестве аргумента нашу просьбу:

print("Привет! Давай знакомиться! Как тебя зовут?")

Python послушно вывел нашу просьбу на экран:

Привет! Давай знакомиться! Как тебя зовут?

2. Реализуем ввод имени

Теперь нам нужно разрешить пользователю вводить данные в программе. Поэтому предлагаю воспользоваться функцией input(). При вызове функции input(), программный поток останавливается до того момента, пока пользователь не введет данные через клавиатуру. Это то, что нам нужно! А чтобы была возможность использовать в дальнейшем полученные от пользователя данные, сразу же после получении имени, сохраним его в какой-нибудь переменной, например, в переменной user_name:

print("Привет! Давай знакомиться! Как тебя зовут?")
user_name = input()

В среде разработки Anaconda результат работы этих двух строк выглядит так:

В вашей среде разработки окно для ввода информации может выглядеть иначе. Например, при работе в консоли, ожидание пользовательского ввода помечено мигающим прямоугольником. Однако, вид строки ввода не так важен, важно то, что программа перешла в режим ожидания ответа от пользователя!

Таким образом, мы справились с заданием и сохранили введенные пользователем данные в переменной user_name. Давайте теперь выведем имя пользователя на экран в контексте диалога:

print("Привет! Давай знакомиться! Как тебя зовут?")
user_name = input()
print("Приятно познакомиться, " +  user_name + "!")

Результат работы кода

Теперь при вводе имени «Великий Программист», на экран выводится строка:

Приятно познакомиться, Великий Программист!

Однако, в этом коде есть маленькая недоработка

Давайте проверим, что произойдет, если не вводить ничего, или же — ввести пробел вместо имени, и нажать «Enter»? В таком случае на экране появится некорректное приветствие:

Приятно познакомиться, ! 

Как это исправить?

Нам нужно добавить проверку на число введенных пользователем символов, предварительно удалив крайние пробелы. То есть нам нужно добавить условие:

Пока длина имени без пробелов будет меньше единицы:
    запрашиваем у пользователя осуществить ввод имени.  

Для этого мы воспользуемся циклом while (который означает «пока..» ), и конструкцией len(user_name.split()), которая возвращает длину строки без пробелов. Подробнее о работе функций split() и len() я расскажу чуть ниже, под кодом. А сейчас переведем сформулированное выше условие на язык Python:

user_name=''
# Пока длина имени без пробелов будет меньше единицы: 
while len(user_name.strip())<1:
    print("Привет! Давай знакомиться! Как тебя зовут?")
    user_name = input()
print("Приятно познакомиться, " +  user_name + "!")

Обратите внимание, что перед циклом while появилось объявление переменной user_name. Так как в цикле нам нужно посчитать длину строки user_name еще до того, как пользователь осуществит ввод, то создадим пустую строку user_name до вызова цикла. Так как длина этой строки равна нулю, то функция print() выведет на экран предложение познакомиться, и у пользователя появится шанс изменить длину user_name.

У нас появился Telegram-канал для изучающих Python! Подписывайтесь по ссылке: «Кодим на Python! Вместе «питонить» веселее! 😉

Подробнее о функциях split() и len():

Функция split() — удаляет пробелы в начале и в конце строки. Вызов функции split() для строки user_name осуществляется следующим образом:

user_name.split()

Функция len() является специалистом по измерению длин в мире Python. Если мы передадим функции len() в качестве аргумента строку, оставшуюся после удаления пробелов, то узнаем длину этой строки:

  # длина строки user_name  len(user_name.split())  

Итоговый код: запрашиваем у пользователя имя и выводим его на экран:

user_name=''
while len(user_name.strip())<1:
    print("Привет! Давай знакомиться! Как тебя зовут?")
    user_name = input()
print("Приятно познакомиться, " +  user_name + "!")

Добавить комментарий