Input and Output in Python: A Comprehensive Guide for Beginners

Input and output are fundamental concepts in programming that allow developers to interact with users and display results to them. In this article, we'll delve into the various ways to handle input and output in Python, along with extensive code examples for better understanding.

Taking Input from Users

l. Using the input() Function

Python provides a simple and versatile method for taking input from users through the input() function. Here's how it works:

# Taking input from the user
name = input("Enter your name: ")

# Output
print("Hello, " + name)

In this example, the input() function prompts the user for input, and whatever they type is stored in the variable name. The subsequent print() statement displays a greeting message along with the entered name, followed by printing the data type of the input (which will be a string).

ll. Accepting Integer Input

You can also use the input() function to take integer input from users:

# Taking input from the user as an integer
num = int(input("Enter a number: "))

add = num + 1

# Output

In this snippet, the input is converted to an integer using the int() function, enabling mathematical operations.

lll. Taking Multiple Inputs

Python allows you to receive multiple inputs of the same data type at once using the split() method in combination with the map() function:

a, b, c = map(int, input("Enter the Numbers: ").split())
print("The Numbers are:", a, b, c)

Here, the user can input three space-separated numbers, and the map() function converts them to integers.

Input for Sequence Data Types

Taking List/Set Elements

You can collect list or set elements either by using iterative methods (like append() or add()) or by employing the map() and list()/set() methods:

Method 1: Iterative Approach

List = list()
Set = set()
l = int(input("Enter the size of the List: "))
s = int(input("Enter the size of the Set: "))
print("Enter the List elements:")
for i in range(0, l):
print("Enter the Set elements:")
for i in range(0, s):

Method 2: Using map() and list()/set()

List = list(map(int, input("Enter List elements: ").split()))
Set = set(map(int, input("Enter the Set elements: ").split()))

Taking Input for Tuple

While tuples are immutable, you can still add elements using a workaround:

T = (2, 3, 4, 5, 6)
print("Tuple before adding new element:", T)
L = list(T)
L.append(int(input("Enter the new element: ")))
T = tuple(L)
print("Tuple After adding the new element:", T)

Displaying Output

l. Using the print() Function

Python's print() function is a versatile tool for displaying output:


# Disabling softspace feature
print('G', 'F', 'G')

You can adjust the sep and end parameters to control separation and line endings:

print("GFG", end="@")
print('G', 'F', 'G', sep="#")

ll. Formatting Output

Python offers various methods for output formatting:

Using Formatted String Literals

name = "Gfg"
print(f'Hello {name}! How are you?')

Using format() Method

a = 20
b = 10
sum = a + b
sub = a - b
print('The value of a is {} and b is {}'.format(a, b))
print('{2} is the sum of {0} and {1}'.format(a, b, sum))
print('{sub_value} is the subtraction of {value_a} and {value_b}'.format(value_a=a, value_b=b, sub_value=sub))

Using % Operator

num = int(input("Enter a value: "))
add = num + 5
print("The sum is %d" % add)


In this comprehensive guide, we explored the various ways of handling input and output in Python. From taking user input using input() to formatting and displaying output using the print() function, you've learned the essential techniques to communicate with users and showcase results effectively in Python programs. Armed with this knowledge, you're ready to embark on your programming journey with confidence!

Input and Output in Python: A Quick Overview

Introduction to Input and Output:

  • Input and output are core concepts in programming for user interaction and result display.
  • Python provides various methods for handling input and output operations.

Taking Input from Users:

  • The input() function is used to obtain user input.
  • Input is stored as a string.
  • Example: name = input("Enter your name: ")

Accepting Integer Input:

  • Convert input to an integer using int().
  • Example: num = int(input("Enter a number: "))

Taking Multiple Inputs:

  • Use split() and map() to take multiple inputs of the same data type.
  • Example: a, b, c = map(int, input("Enter the Numbers: ").split())

Input for Sequence Data Types:

  • For lists/sets, use iterative methods or map() and conversion functions.
  • Example:
    • Iterative: Collect elements one by one using append() or add().
    • Using map() and list()/set(): Convert input string into a list/set.

Taking Input for Tuple:

  • Tuples are immutable, but you can convert to a list, add elements, and convert back.
  • Example: Convert tuple to list, add element, and convert back to tuple.

Displaying Output:

  • Python's print() function is used for output display.
  • Example: print("Hello, World!")

Formatting Output:

  • Use formatted string literals, format() method, or % operator for customized output.
  • Example:
    • Formatted String Literals: print(f'Hello {name}!')
    • format() Method: print('Value: {}'.format(value))
    • % Operator: print("The sum is %d" % sum)

Test Your Knowledge

1. What is the primary purpose of the input() function in Python?
2. Which data type is user input stored as when using the input() function?
3. How can you convert user input to an integer?
4. What does the map() function do when used with input() and split()?
5. How can you take multiple integer inputs at once using the map() function?
6. Which method can be used to add elements to a list iteratively?
7. What is the primary advantage of using formatted string literals for output?
8. What is the purpose of the sep parameter in the print() function?
9. Which operator is used for output formatting with placeholders?
10. How is input for tuples managed in Python?
Kickstart your IT career with NxtWave
Free Demo