How do you get two integers from the same line in python?

I wonder if it is possible to input two or more integer numbers in one line of standard input. In C/C++ it's easy:

C++:

#include 
int main() {
    int a, b;
    std::cin >> a >> b;
    return 0;
}

C:

#include 
void main() {
    int a, b;
    scanf("%d%d", &a, &b);
}

In Python, it won't work:

enedil@notebook:~$ cat script.py 
#!/usr/bin/python3
a = int(input())
b = int(input())
enedil@notebook:~$ python3 script.py 
3 5
Traceback (most recent call last):
  File "script.py", line 2, in 
    a = int(input())
ValueError: invalid literal for int() with base 10: '3 5'

So how to do it?

asked Apr 23, 2014 at 19:47

How do you get two integers from the same line in python?

4

Split the entered text on whitespace:

a, b = map(int, input().split())

Demo:

>>> a, b = map(int, input().split())
3 5
>>> a
3
>>> b
5

answered Apr 23, 2014 at 19:48

Martijn PietersMartijn Pieters

987k274 gold badges3883 silver badges3242 bronze badges

9

If you are using Python 2, then the answer provided by Martijn does not work. Instead,use:

a, b = map(int, raw_input().split())

answered Oct 15, 2017 at 17:57

1

x,y = [int(v) for v in input().split()]
print("x : ",x,"\ty: ",y)

answered Sep 3, 2021 at 17:47

How do you get two integers from the same line in python?

In python, every time we use input() function it directly switches to the next line. To use multiple inline inputs, we have to use split() method along with input function by which we can get desired output.

a, b = [int(z) for z in input().split()]
print(a, b)

Input:

3 4

Output:

3 4

answered Nov 28, 2021 at 11:39

How do you get two integers from the same line in python?

x, y = int(input()),  int(input())
print("x : ",x,"\ty: ",y)

answered Sep 3, 2021 at 6:58

How do you get two integers from the same line in python?

2

Last update on August 19 2022 21:51:43 (UTC/GMT +8 hours)

Python Basic: Exercise-134 with Solution

Write a Python program to input two integers in a single line.

Sample Solution-1:

Python Code:

print("Input the value of x & y")
x, y = map(int, input().split())
print("The value of x & y are: ",x,y)

Sample Output:

Input the value of x & y
 2 4
The value of x & y are:  2 4

Visualize Python code execution:

The following tool visualize what the computer is doing step-by-step as it executes the said program:

Sample Solution-2:

Python Code:

a, b = [int(a) for a in input("Input the value of a & b: ").split()]
print("The value of a & b are:",a,b)

Sample Output:

Input the value of a & b:  2 4
The value of a & b are: 2 4

Visualize Python code execution:

The following tool visualize what the computer is doing step-by-step as it executes the said program:

Python Code Editor:

Have another way to solve this solution? Contribute your code (and comments) through Disqus.

Previous: Write a Python program to calculate the time runs (difference between start and current time)of a program.
Next: Write a Python program to print a variable without spaces between values.

Python: Tips of the Day

Concatenating iterable to a single string:

>>> x = ["python","really", "rocks"]
>>> " ".join(x)
'python really rocks'

How do you get two inputs on the same line in Python?

Using Split () Function With the help of the split () function, developers can easily collect multiple inputs in Python from the user and assign all the inputs to the respective variables.

How do you take an integer input in a single line in Python?

You can use a list comprehension to take n inputs in one line in Python. The input string is split into n parts, then the list comp creates a new list by applying int() to each of them.

How do you print 2 numbers in Python?

How to Add Two Numbers in Python.
❮ Previous Next ❯.
Example. x = 5. y = 10. print(x + y) Try it Yourself ».
Example. x = input("Type a number: ") y = input("Type another number: ") sum = int(x) + int(y) print("The sum is: ", sum) Try it Yourself ».
❮ Previous Next ❯.