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

2024-06-02 05:03:46 发布

您现在位置:Python中文网/ 问答频道 /正文

在python3中,如何从单行输入和范围中读取整数列表?

要求:读取给定列表的整数值,该列表与单行输入之间用空格分隔,但范围为给定大小。你知道吗

示例:

范围=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)]

有人能帮我达到我的要求吗?


Tags: ofnoin示例列表for代表整数
2条回答

可以直接使用str.split,传递no_of_marksfor beingmaxsplit参数:

no_of_marks = 4
res = [int(x) for x in input().split(" ", no_of_marks)] 

这是live example

拆分字符串,将其切片为只取第一个n字,然后将它们转换为整数。你知道吗

marks = [int(x) for x in input().split()[:n]]

如果输入的整数少于n,则不会失败,因此还应该检查列表的长度

if len(marks) < n:
    raise ValueError("Not enough inputs")

相关问题 更多 >