51 lines
3.1 KiB
Markdown
51 lines
3.1 KiB
Markdown
![]() |
---
|
|||
|
title: Python Input Function
|
|||
|
localeTitle: Входная функция Python
|
|||
|
---
|
|||
|
Много раз в программе нам нужен какой-то ввод от пользователя. Ввод данных от пользователя заставляет программу чувствовать себя интерактивной. В Python 3 для ввода ввода у пользователя есть функция `input()` . Если вызывается функция ввода, поток программы будет остановлен до тех пор, пока пользователь не даст вход и не завершит вход с помощью клавиши возврата. Давайте посмотрим несколько примеров:
|
|||
|
|
|||
|
1. Когда мы просто хотим принять вход:
|
|||
|
|
|||
|
# Это просто даст подсказку без какого-либо сообщения
|
|||
|
|
|||
|
inp = input ()
|
|||
|
|
|||
|
|
|||
|
 [Код запуска](https://repl.it/CUqX/0)
|
|||
|
|
|||
|
1. Чтобы дать подсказку с сообщением:
|
|||
|
|
|||
|
prompt _с_ сообщением = input (' «)
|
|||
|
|
|||
|
# \_
|
|||
|
|
|||
|
# «\_» На выходе - это приглашение
|
|||
|
|
|||
|
|
|||
|
 [Код запуска](https://repl.it/CUqX/1)
|
|||
|
|
|||
|
3\. Когда мы хотим взять целочисленный ввод:
|
|||
|
```
|
|||
|
number = int(input('Please enter a number: '))
|
|||
|
```
|
|||
|
|
|||
|
 [Код запуска](https://repl.it/CUqX/2)
|
|||
|
|
|||
|
Если вы введете не целое значение, тогда Python вызовет ошибку `ValueError` . **Поэтому всякий раз, когда вы используете это, убедитесь, что вы его тоже поймали.** В противном случае ваша программа неожиданно остановится после запроса.
|
|||
|
```
|
|||
|
number = int(input('Please enter a number: '))
|
|||
|
# Please enter a number: as
|
|||
|
# Enter a string and it will throw this error
|
|||
|
# ValueError: invalid literal for int() with base 10 'as'
|
|||
|
```
|
|||
|
|
|||
|
4\. Когда нам нужен ввод строки:
|
|||
|
```
|
|||
|
string = str(input('Please enter a string: '))
|
|||
|
```
|
|||
|
|
|||
|
 [Код запуска](https://repl.it/CUqX/3)
|
|||
|
|
|||
|
Хотя, входы хранятся по умолчанию в виде строки. Использование функции `str()` позволяет считывателю кода понять, что вход будет «строкой». Хорошая практика - указать, какой тип ввода будет сделан заранее.
|
|||
|
|
|||
|
[Официальные документы](https://docs.python.org/3/library/functions.html#input)
|