我可以在Python中:
n = int(input())
a = [int(x) for x in input().split()]
我可以在c++中:
int main()
{
int n, x;
cin >> n;
for (int i = 0; i < n; i++)
{
cin >> x;
somthing(x)
}
}
如何在Python(3.x)上编写它?我可以处理流中的数字而不将所有数字保存在列表中吗?
输入数据(例如):
6
1 4 4 4 1 1
我可以使用sys.stdin吗?
UPD:
好的,我写了这个:
import sys
n = int(input())
i = 0
c = ""
s = ""
while i < n:
c = sys.stdin.read(1)
if c in [" ","n"]:
x = int(s)
somthing(x)
s = ""
i += 1
else:
s += c
有没有更优雅的解决方案?
Python对这种特定形式的输入没有特殊情况。默认情况下,input()
函数从输入中读取一行(由换行符分隔)并将其转换为字符串。
您必须使用split()
来分隔这些值。