Рубрики
Без рубрики

Пользовательский ввод Python | Функция Python Input () | Ввод с клавиатуры

Пользовательский ввод Python может быть легко взят с помощью input() или raw_input() в зависимости от того, какую версию языка программирования Python вы используете.

Автор оригинала: Team Python Pool.

Пользовательский ввод Python | Функция Python Input () | Ввод с клавиатуры

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

Что такое пользовательский ввод Python и зачем Он Нам нужен в Python?

Почти все интересные программы принимают ввод от пользователя в какой-то момент. Вы можете начать принимать пользовательский ввод в свои программы с помощью функции input() в Python. Функция ввода выводит пользователю сообщение, описывающее тип ввода, который вы ищете, а затем ждет, пока пользователь введет значение.

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

Вряд ли есть какие – либо программы без какого-либо ввода. Входные данные могут поступать различными способами, например, из базы данных, другого компьютера, щелчков и движений мыши или из Интернета. Однако в большинстве случаев ввод осуществляется с клавиатуры. Для этой цели Python предоставляет функцию input(). input имеет необязательный параметр, который является строкой приглашения.

Как читать ввод с клавиатуры в Python?

Пользовательский ввод Python в Python 2

В Python2 мы можем считывать входные данные со стандартного устройства ввода, то есть с клавиатуры , используя следующие две встроенные функции. Но, как мы все знаем, официальная поддержка Python 2 закончилась. Так что лучше выучить Python 3 прямо сейчас.

  • raw_input
  • <код>ввод

Но, как мы все знаем, официальная поддержка Python 2 закончилась. Так что лучше выучить Python 3 прямо сейчас.

Пользовательский ввод Python в Python 3

В Python 3 для получения ввода от пользователя мы используем функцию input для считывания пользовательского ввода со стандартного ввода (клавиатуры).

Ввод Данных С Помощью Функции raw_input ( )

Функция определяется как блок организованного, многократно используемого кода, используемого для выполнения одного связанного действия. Python имеет множество встроенных функций; вы также можете создавать свои собственные. Python имеет функцию ввода, которая позволяет вам попросить пользователя ввести некоторый текст. Вы вызываете эту функцию, чтобы сказать программе остановиться и подождать, пока пользователь введет данные. В Python 2 у вас есть встроенная функция raw_input()

В Python 2.7 вам нужно использовать raw_input(). Эта функция считывает только одну строку из стандартного ввода и по умолчанию возвращает ее в виде строки.

Если вы используете python 2, то нам нужно использовать функцию raw_input() вместо функции input ().

Примечание: функция raw_input() выведена из эксплуатации в Python 3.

Пример пользовательского ввода Python С использованием raw_input()

Выход:

Please enter the value: Hello Python
Input received from the user is: Hello Python

Ввод Данных С Помощью Функции input ( )

Для ввода данных в Python мы используем функцию input (), она запрашивает ввод от пользователя и возвращает строковое значение, независимо от того, какое значение вы ввели, все значения будут рассматриваться как строковые значения.

Чтобы получить пользовательский ввод в Python (3), вы используете команду input(). Сохраните результат в переменной и используйте его в свое удовольствие. Помните, что результат, который вы получите от пользователя, будет строкой, даже если он введет число.

Например,

То, что это напечатает в терминале (или оболочке, независимо от того, в чем вы запускаете Python), будет:

>>> Give me your name: Michele
Your name is Michele

Что происходит в конце input(), так это то, что он ждет, пока пользователь что-то наберет и нажмет ENTER. Только после того, как пользователь нажмет ENTER, программа продолжит работу.

Пример пользовательского ввода Python С помощью функции input()

Пример 1 пользовательского ввода Python

Выход:

Введите имя пользователя: Python PoolИмя пользователя: Python Pool

Пример 2 пользовательского ввода Python

Выход

Enter any value: 10
value of val1:  10
type of val1:  
Enter another value: 10.23
value of val2:  10.23
type of val2:  
Enter another value: Hello
value of val3:  Hello
type of val3:  

Смотрите программу и вывод – Здесь мы предоставили три значения "10" для val1, которое является целочисленным значением, но рассматривается как строка, "10.23" для val2, которое является плавающим значением, но рассматривается как строка, "Hello" для val3, которое является строковым значением.

Примите целое число в качестве пользовательского ввода

Пример 1 пользовательского ввода Integer Python

Выход

56
12
68

Пример 2 пользовательского ввода Integer Python

print("value of val2: ", val2)
print("type of val2: ", type(val2))

Выход

Enter any number: 123.456
value of val1:  123.456
type of val1:  
Enter any number: 789.123
value of val2:  789.123
type of val2:  

Получение входных данных от пользователя в Python в виде списка

Давайте прочитаем входные данные один за другим. Наше приложение попросит пользователя ввести список, пользователь будет вводить каждый ввод по одному и, наконец, наше приложение распечатает список, введенный пользователем.

num_list = [](input("Enter the total count of elements : "))ff
for i in range(0,count):
    num_list.append(int(input()))
print(num_list)

В этом примере,

  • num_list - это пустой список. Мы добавим все элементы в этот список.
  • счетчик предназначен для хранения общего количества элементов. Вторая строка просит пользователя ввести общее количество элементов и сохраняет это значение в переменной count.
  • Используя один для цикла, мы читаем элементы один за другим от пользователя. Эти элементы добавляются в пустой список num_list.
  • Наконец, мы распечатываем список num_list.

Получить несколько значений от пользователя

Разработчик часто хочет, чтобы пользователь вводил несколько значений или входных данных в одну строку. InC++/C пользователь может принимать несколько входов в одной строке с помощью scanf, но в Python пользователь может принимать несколько значений или входов в одной строке двумя методами.

  • метод split()
  • Понимание списка

Использование метода split (): Эта функция помогает получить несколько входных данных от пользователя. Он разбивает данный вход на указанный разделитель. Если разделитель не предусмотрен, то любое пустое пространство является разделителем. Как правило, пользователь использует метод split() для разделения строки Python, но его можно использовать для получения нескольких входных данных.

Синтаксис:

input().split(separator, maxsplit)

Пример:

# Python program showing how to 
# multiple input using split 

# taking two inputs at a time 
x,("Enter a two value: ").split() 
print("Number of boys: ", x) 
print("Number of girls: ", y) 
print() 

# taking three inputs at a time 
x, y,("Enter a three value: ").split() 
print("Total number of students: ", x) 
print("Number of boys is : ", y) 
print("Number of girls is : ", z) 
print() 

# taking two inputs at a time 
a,("Enter a two value: ").split() 
print("First number is {} and second number is {}".format(a, b)) 
print() 

# taking multiple inputs at a time 
# and type casting using list() function (map(int, input("Enter a multiple value: ").split())) 
print("List of students: ", x) 

а) раскол ()

функция split( ) помогает нам получить несколько входных данных от пользователя и назначить их соответствующим переменным в одной строке. Кроме того, эта функция обычно используется для разделения данной строки на несколько href="https://en.wikipedia.org/wiki/Substring">подстроки. Однако вы также можете использовать его для нескольких входов. Функция обычно разбивает заданный вход указанным разделителем, и в случае, если разделитель не предусмотрен, то любое пустое пространство рассматривается как разделитель. href="https://en.wikipedia.org/wiki/Substring">подстроки. Однако вы также можете использовать его для нескольких входов. Функция обычно разбивает заданный вход указанным разделителем, и в случае, если разделитель не предусмотрен, то любое пустое пространство рассматривается как разделитель.

Синтаксис использования функции split для приема нескольких входных данных следующий:

variable 1, variable ("Enter what has to be conveyed to the user here"). split()    # for space-separated inputs

Пример разделения

# Python program to take multiple inputs from the user
a,("Enter two of your lucky number: ").split() 
print("First lucky number is: ", a) 
print("Second lucky number is: ", b)
Output:
Enter two of your lucky number: 7 1
First lucky number is: 7
Second lucky number is: 1

б) входные данные ()

Вы можете взять несколько входов в одной строке, используя функцию raw_input несколько раз, как показано ниже.

#multiple inputs in Python using input
x,("Enter First Name: "), input("Enter Last Name: ") 
print("First Name is: ", x) 
print("Second Name is: ", y)
Output:
Enter First Name: FACE
Enter Last Name: Prep
First Name is: FACE
Second Name is: Prep

в) карта()

map () - это еще одна функция, которая поможет нам получить несколько входных данных от пользователя. В общем случае синтаксис функции map-это map (fun, iter). Здесь fun-это функция, которой функция map передает каждую итерацию.

Синтаксис для нескольких входов с использованием map()

variable 1, variable 2, variable(int, input().split())

Пример для получения целочисленных входных данных от пользователя.

#multiple inputs in Python using map
x,(int, input("Enter two values: ").split())
print("First Number is: ", x) 
print("Second Number is: ", y)
Output:
Enter two values: 7 1
First Number is: 7
Second Number is: 1

Пример для получения строкового ввода от пользователя.

#multiple inputs in Python using map
x,(str, input("Enter your first and last name ").split())
print("First Name is: ", x) 
print("Second Name is: ", y)

г) Понимание Списка

Типы дат списка также помогают принимать несколько входных данных от пользователя одновременно. Синтаксис для создания списка и хранения входных данных в нем -

x, y = [x for x in input("Enter two value: ").split()]

Этот список позволяет одновременно принимать несколько входных данных разного типа. Приведенный ниже пример поможет вам лучше понять.

#multiple inputs in Python using list comprehension
x, y = [x for x in input("Enter your name and age: ").split(",")]
print("Your name is: ", x) 
print("Your age is: ", y)
Output:
Enter your name and age: FACE Prep, 8
Your name is: FACE Prep
Your age is: 8

Пример пользовательского ввода Python и EOFError

n Python 2, raw_input() возвращает строку, а input() пытается запустить ввод в виде выражения Python. Итак, изменение вашей первой строки на что-то вроде этого должно сработать.

EOFError возникает, когда встроенная функция, такая как input() или raw_input (), не считывает никаких данных до того, как столкнется с концом своего входного потока. Файловые методы, такие как read (), возвращают пустую строку в конце файла.

Данный код переписывается следующим образом, чтобы поймать ошибку EOFError и найти ее тип.

#eofError.py
try:
while True:('prompt:')
print 'READ:', data
except EOFError as e:
print e
Then if we run the script at the terminal
$ echo hello | python eofError.py

ВЫХОД

prompt:READ: hello
prompt:EOF when reading a line

Выражения пользовательского ввода Python в командной строке

Функция user input() в Python вычислит любое выражение, введенное пользователем. Вот несколько примеров:

>>> input(8/3)
2.6666666666666665
>>> input(800-3)
797
>>> input(len("Python"))
6
>>> input(min([1,2,3]))
1
>>> input(max([1,2,3]))
3

Различия между input() и raw_input()

Использование input или, лучше сказать, неявная оценка input часто приводила к серьезным ошибкам программирования в более ранних версиях Python, т. е. 2.x Поэтому там функция input ведет себя как функция raw_input из Python2.

функция input() работает по-разному между Python 3 и Python 2. Как input(), так и raw_input() функция принимает входные данные от пользователя.

Input и raw_input() в Python 2

  • Основное различие между этими двумя функциями заключается в том, что функция input() автоматически преобразует пользовательский ввод в соответствующий тип, т. е. если введенная пользователем строка input() преобразует ее в строку, а если пользователь ввел число, то она преобразует его в целое число.
  • raw_input() преобразует каждый пользовательский ввод в строку.

функция raw_input() python 2 переименована в input() в Python 3.x, а исходная функция input() удалена из Python 3.

Разница при использовании этих функций зависит только от того, какая версия Python используется. Для Python 2 функция raw_input() используется для получения строкового ввода от пользователя через командную строку, в то время как функция input() возвращает фактическую оценку входной строки и пытается запустить ее как код Python.

Input и raw_input в функции в Python 3

В Python 3 функция raw_input() устарела и заменена функцией input() и используется для получения строки пользователя с клавиатуры. А функция input() Python 2 прекращена в версии 3. Чтобы получить ту же функциональность, которая была предоставлена функцией input() Python 2, оператор eval(input()) должен использоваться в Python 3.

Must Read: Лучшая книга для изучения Python в 2020 году

Вывод

Итак, в заключение мы можем сказать, что очень легко взять пользовательский ввод в Python из функции input (). Пользовательский ввод Python может быть легко взят с помощью input() и raw_input() в зависимости от версии Python, которую вы используете.

Если у вас все еще есть какие-либо сомнения, дайте мне знать ваши комментарии и отзывы в разделе ниже. Счастливого кодирования!