用于单行列表输入和多行数组输入的Python代码

用于单行列表输入和多行数组输入的Python代码,python,Python,我们是否有任何方法可以在Python中进行单行和多行列表输入? 和C++一样,我们有:-< /P> for(i=0;i<5;i++) { cin>>A[i]; //this will take single line as well as multi-line input . } 我的问题是,我们有任何Python代码,它可以接受单行以及多行输入,只是C++中的“我们”, 每个文档,读取一行。p> 具有多行“输入”的最小示例 >lines=sys.stdin.readli

我们是否有任何方法可以在Python中进行单行和多行列表输入? 和C++一样,我们有:-< /P>
for(i=0;i<5;i++)
{
  cin>>A[i]; //this will take single line as well as multi-line input .
}
我的问题是,我们有任何Python代码,它可以接受单行以及多行输入,只是C++中的“我们”,

每个文档,读取一行。p> 具有多行“输入”的最小示例

>lines=sys.stdin.readlines()#读取到EOF(文件结尾),Ctrl-D
1#输入
2#输入
3#输入。带“Ctrl-D”的EOF。
>>>行#字符串输入数组
['1\n','2\n','3\n']
>>>map(int,lines)#“functional programming”原语,将'int'应用于'lines'数组的每个元素。与for循环或列表理解相同的概念。
[1, 2, 3]

如果你不喜欢使用<代码> map < /> >,考虑列表压缩:

>>[int(l)表示行中的l]
[1, 2, 3]

重新发明方轮很容易:

def m_input(N):
    if(N < 1): return []
    x = input().strip().split()[:N]
    return x + m_input(N - len(x))
def m_输入(N):
如果(N<1):返回[]
x=输入().strip().split()[:N]
返回x+m_输入(N-len(x))

我想说的是,可能重复的用例略有不同。他提供的最起码的例子(而不是没有)也优于IMHO。
def m_input(N):
    if(N < 1): return []
    x = input().strip().split()[:N]
    return x + m_input(N - len(x))