freeCodeCamp/guide/english/python/input-functions/index.md

3.3 KiB

title
Python Input Function

Many a time, in a program we need some input from the user. Taking inputs from the user makes the program feel interactive. In Python 3, to take input from the user we have a function input(). If the input function is called, the program flow will be stopped until the user has given an input and has ended the input with the return key. Let's see some examples:

  1. When we just want to take the input:

    This will just give a prompt without any message

    inp = input()

:rocket: Run Code

  1. To give a prompt with a message:

    prompt_with_message = input('')

    _

    The '_' in the output is the prompt

:rocket: Run Code

3. When we want to take an integer input:

number = int(input('Please enter a number: '))

:rocket: Run Code

If you enter a non integer value then Python will throw an error ValueError. So whenever you use this, please make sure that you catch it too. Otherwise, your program will stop unexpectedly after the prompt.

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. When we want a string input:

string = str(input('Please enter a string: '))

:rocket: Run Code

Though, inputs are stored by default as a string. Using the str() function makes it clear to the code-reader that the input is going to be a 'string'. It is a good practice to mention what type of input will be taken beforehand.

5. Separating input with spaces:

a,b,c=input("Please enter 3 words: ").split()

:rocket: Ejecutar código In this case, we can read 3 words separated by space and store in three different vars, so we can use them later.

6. Separating input of integers:

a,b,c=map(int,input("Please insert 3 numbers: ").split())

As we know, the input are stored by default as a string, so we can use the map() function, indicate that the input will be converted to integers and then store each value in a variable.

:rocket: Ejecutar código Documentos oficiales

NOTE: Inside the split() function, we can add the separator for the input, por example, if we want to separate each value by a comma, we should write input().split(",") and so on.

Official Docs