我可以通过列表理解实现相同的目标吗?

时间:2016-12-19 15:12:16

标签: list-comprehension

我是Python初学者。

我花了一个小时用列表推导来完成以下任务。虽然我可以创建一个列表但我可以使用它并不是想要得到的。

问题: 我有一个由2个(或可能更多)字符串组成的列表列表,例如:

l = [[“1”,“2”],[“3”,“4”]]

我想使用列表推导(如果可能)来嵌套嵌套列表的每个元素。

我可以使用for循环来做到这一点:

list_int=[] for e in l: u=[] for j in e: u.append(int(j)) if len(u)==len(l[1]): t.append(u)

使用列表推导还可以吗?

谢谢!

2 个答案:

答案 0 :(得分:2)

l=[["1","2"], ["3", "4"]]
[[int(x) for x in elm] for elm in l]

输出:

[[1, 2], [3, 4]]

答案 1 :(得分:2)

在python 2.7中

>>> l = [["1","2"],["3","4"]]
>>> l = [[map(int,ls)] for ls in l]
>>> l
[[[1, 2]], [[3, 4]]]
>>> 

在python 3.4中

>>> l = [["1","2"],["3","4"]]
>>> l = [list(map(int,ls)) for ls in l]
>>> l
[[1, 2], [3, 4]]
>>>