使用Python 3中的列表理解功能,从单行输入中读取一个整数列表以及一个范围

如何在Python 3中从单行输入以及范围读取整数列表?

要求:读取给定列表的整数值,该整数值与单行输入之间用空格隔开,但具有给定大小的范围。

例子:

范围= 4

然后列表大小= 4

然后从大小为4的一行中读取输入列表

我在下面的列表理解语句中进行了尝试,但是它是从4行读取一个列表(即创建4个列表,每个列表代表给定行的值),而不是只读取1个大小为4的列表

    no_of_marks = 4
    marksList = [list(int(x) for x in input().split()) for i in range(no_of_marks)]

有人可以帮助我达到我的要求吗?


紫衣仙女
浏览 133回答 2
2回答

手掌心

您可以str.split直接使用,传递no_of_marks为maxsplit参数:no_of_marks = 4 res = [int(x) for x in input().split(" ", no_of_marks)]这里有现场示例

PIPIONE

分割字符串,将其切成仅取第一个n单词,然后将它们变成整数。marks&nbsp;=&nbsp;[int(x)&nbsp;for&nbsp;x&nbsp;in&nbsp;input().split()[:n]]如果输入少于n整数,这不会失败,因此您还应该检查列表的长度if&nbsp;len(marks)&nbsp;<&nbsp;n:&nbsp;&nbsp;&nbsp;&nbsp; raise&nbsp;ValueError("Not&nbsp;enough&nbsp;inputs")
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python