将一个Str列表转换为一个Int列表(Python)

时间:2013-11-05 21:36:35

标签: python-3.x

我需要将字符串列表转换为整数列表。我已经搜索过这个问题,但我不认为人们遇到了同样的问题。

假设我有一个字符串列表: List1 = ['1 2 3 4 5','6 7 8 9 10','11 12 13 14 15']

我如何将其转化为: [1,2,3,4,5,6,7,8,9,10,11,12,13,14,15]?

我很困惑如何做到这一点,因为不是['1','2','3'等......而是一个字符串中有大约5个数字。

1 个答案:

答案 0 :(得分:3)

首先,加入List1的每个元素以形成单个空格分隔的字符串。然后将其拆分并将结果列表的每个元素转换为整数。

>>> List1 = ['1 2 3 4 5', '6 7 8 9 10', '11 12 13 14 15']
>>> [ int(x) for x in ' '.join(List1).split()]
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15]

您还可以使用嵌套for与列表理解:

>>> [ int(x) for y in List1 for x in y.split() ]

您按照与常规嵌套for循环相同的顺序解析每个for表达式。