【发布时间】:2014-04-23 19:47:06
【问题描述】:
我想知道是否可以在一行标准输入中输入两个或多个整数。在C/C++ 这很简单:
C++:
#include <iostream>
int main() {
int a, b;
std::cin >> a >> b;
return 0;
}
C:
#include <stdio.h>
void main() {
int a, b;
scanf("%d%d", &a, &b);
}
在Python,它不起作用:
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 <module>
a = int(input())
ValueError: invalid literal for int() with base 10: '3 5'
那该怎么做呢?
【问题讨论】:
-
@Asad 是的。为什么不呢?
-
@Asad 你用什么编译器?我有
gcc (Ubuntu 4.8.2-19ubuntu1) 4.8.2。有用。很好。 -
@RyanHaining 那里有一个空间。我不是 C 专家,但我认为除非输入是
35,否则这不会起作用。编辑:刚刚查了scanf,猜我错了。 -
@Asad 它适用于空格,而不是没有空格。自己编译并测试。
标签: python python-3.x input line