在 python 中创建整数列表

Creating a list of integers in python

是否可以在不使用任何第三方库的情况下使用一行代码创建整数列表?

我试过语法:

lst = list(int(1234))

或语法:

lst = list(int(1,2,3,4))

但两者都return错误。

理想情况下,我想要这样的东西:

>>> lst = list(int(input('insert numbers:  )))
insert numbers:  1234
>>> print(lst)
1, 2, 3, 4

通常当我想创建一个包含整数的列表时,我会执行(相当长的)以下操作:

lst=[]
n=int(input('how many numbers?  '))
for i in range(n):
    num=int(input('number?  '))
    lst.append(num)

试试这个:

lst = input('insert numbers:  ')
lst = [int(d) for d in lst]
lst

编辑:作为您的评论

只尝试这一行:

[int(d) for d in input('insert numbers:  ')]

我相信你不能不传递给string类型就直接执行这个操作,因为int类型是不可迭代的。在这种情况下,您可以只使用 input() 而不用 int()。

您可以尝试这两种情况来创建列表:

在这种情况下,将放置不分隔的数字,例如1234(超过1位的数字会更难获得,例如10、11...)

test1 = input('insert numbers :')
lst = [int(number) for number in test1]
lst

这样,你用逗号(',')对数字进行分隔,比如1,12,13,5,我认为这样更合适,因为你可以得到所有数字。

test2 = input('insert numbers (separate with comma):')
lst = [int(number) for number in test2.split(',')]
lst