How To Take Multiple Inputs In Python
In C language, we make use of the scanf() function to obtain the values from the user and store it in the variable.
Coming to the Python language, we use the input() function to take the input from the user, and then we further apply operations on that value.
To add two numbers, we specify variables a & b and then use the input() function for each variable for its storage.
In this article, we will discuss how we can take multiple inputs from the user and then proceed with our objective.
So, in python, we can take multiple inputs using-
- split()
- Using list comprehension
In the first example, we have used the split() function with input(). With the help of this, we can take three values from the user at a time and then print them.
Following program shows how three values(ages) are taken at once, and then the ages are compared.
a,b,c=input("Enter the ages of a,b and c: ").split() print("Value of a: ",a) print("Value of b: ",b) print("Value of c: ",c) if(a>b and a>c): print("{} is oldest".format(a)) elif(b>a and b>c): print("{} is oldest".format(b)) else: print("{} is oldest".format(c))
INPUT-

OUTPUT-

On executing the given code, we can observe the following things in the output-
- The user has provided three values for objects a,b, and c which are separated by a blank space.
- Since we have used the print function, the respective values are displayed.
- We have used the decision-making if-elif in our program, so the values are compared and the expected result is displayed.
In the next example, we will take two values from the user(by using the split() again) and then display the values of x and y.
Following program illustrates the same-
x,y=input("Enter the values for x and y: ").split() print("Value of x is {}".format(x)) print("Value of y is {}".format(y))
INPUT-

OUTPUT-

In the output, we can observe that the expected results are displayed.
The next example shows a slight variation of the previous program. Instead of printing the values of a and b in two separate lines, we will print them in the same line.
Following program illustrates the same-
a,b=input("Enter the values of a and b: ").split() print("The values of a and b are {} and {}".format(a,b))
INPUT-

OUTPUT-

In the above output, we have observed that the expected result is displayed.
So far the values that are given by the user are of integer type.
In the next example, we will provide string values and see what happens!
The following program illustrates the same-
pc1,pc2=input("Enter the possible values when a coin is tossed: ").split() print("The values of pc1 and pc2 are {} and {}".format(pc1,pc2))
INPUT-

OUTPUT-

On executing the given code, we can observe the following things in the output-
- The user has provided two string values for objects pc1 and pc2 which are separated by a blank space.
- Since we have used the print function, the values of pc1 and pc2 are displayed which are heads and tails respectively.
We know that the map function takes the sequence and function as its parameters. It applies a certain functionality to all the elements of a list.
In the given example, we have used map function along with split() to take multiple inputs from the user.
Following program illustrates the same-
x=list(map(int,input("Enter the values: ").split())) print("Elements in x are: ",x) print(type(x))
INPUT-

OUTPUT-

On executing the given code, we can observe the following things in the output-
- The user has provided multiple values for x which are separated by a blank space.
- Since we have used the print function, all the elements of x are displayed.
- The type of x is ‘list’.
In the next example, we will write our program in a stepwise manner. First, we will take our values and then apply the split() method.
Following program illustrates the same-
s_colors=input("Enter the values separated with a space:") s_colors=s_colors.split() print(s_colors)
INPUT-

OUTPUT-

In the above output, the user has given four string values, since the split() is used in the program, a list is returned containing all the strings.
The second method we will discuss to take multiple inputs is using the concept of list comprehension which makes our program more precise.
Following program illustrates the same-
#using list comprehension a,b=[int(a) for a in input("Enter the values: ").split()] print("The value of a is {}".format(a)) print("The value of b is {}".format(b))
INPUT-

OUTPUT-

In the above output, we have observed that the expected results are displayed.
In the next example, we have used the split() function with input() inside our list comprehension. With the help of this, we can take three values from the user at a time and then print them.
Following program shows how three values(ages) are taken at once, and then the ages are compared.
#using list comprehension a,b,c=[int(a) for a in input("Enter the values: ").split()] print("The value of a is {}".format(a)) print("The value of b is {}".format(b)) print("The value of c is {}".format(c)) if(a>b and a>c): print("{} is oldest".format(a)) elif(b>a and b>c): print("{} is oldest".format(b)) else: print("{} is oldest".format(c))
INPUT-

OUTPUT-

On executing the given code, we can observe the following things in the output-
- The user has provided three values for objects a,b, and c which are separated by a blank space.
- Since we have used the print function, the respective values are displayed.
- We have used the decision-making if-elif in our program, so the values are compared and the expected result is displayed.
In the next example, we will use the list comprehension and take multiple values from the user and store them in x.
#using list comprehension x=[int(x) for x in input("Enter multiple values: ").split()] #entering multiple values print("The value of x is {}".format(x))
INPUT-

OUTPUT-

In the above output, we have observed that the expected results are displayed.
So in this article, we learned how multiple inputs can be taken in python using split() and list comprehension.