Python如何从列表中获取整数?

时间:2017-12-11 03:47:22

标签: python list integer

我有一个整数列表,中间有空格。我想检索所有这些单独的整数并创建一个带索引的新列表。

>>> x = ['1 2 3 4']
>>> type(x)
<class 'list'>
>>> len(x)
1

我想将列表转换为

>>> x = [1, 2, 3, 4]
>>> type(x)
<class 'list'>
>>> len(x)
4

我正在尝试分裂,它没有用。我该如何进行转换?

3 个答案:

答案 0 :(得分:3)

这是一种直接的方法:

>>> map(int, x[0].split())
[1, 2, 3, 4]

下面:

  • x[0]['1 2 3 4']转换为'1 2 3 4';
  • .split()将其转换为['1', '2', '3', '4'];
  • map(int, ...)将其转换为[1, 2, 3, 4]

那就是说,为什么你首先有一个列表并不完全清楚,因为它似乎只有一个元素(一串以空格分隔的数字)。

答案 1 :(得分:0)

你可以试试这个:

x = ['1 2 3 4']
final_x = [int(i) for i in x[0] if i.isdigit()]

输出:

[1, 2, 3, 4]

答案 2 :(得分:0)

你可以使用lambda并映射这样的东西:

a = ['1 2 3 4']


print(list(map(lambda x:list(map(lambda y:int(y),x.split())),a)))

输出:

[[1, 2, 3, 4]]