我是Python新手,来自C;这是我的第一篇文章,我全神贯过地寻求如何解决我的问题,但遗憾的是我找不到它。
我有一个列表列表,列表中是数字字符串(排序日期):
d = [['2012', '11', '14'], ['2012', '11', '13'], ['2012', '11', '12']]
我正在尝试将这些字符串数字转换为整数,但我不确定如何使用我用于普通字符串列表的方式来实现它,这是
int_list = [int(x) for x in str_list]
如何遍历我的列表列表并将字符串数转换为整数,以便我的列表看起来像这样
d = [[2012, 11, 14], [2012, 11, 13], [2012, 11, 12]]
很抱歉,如果之前已经问过这个问题,但我真的可以使用一些帮助! 提前谢谢!
答案 0 :(得分:1)
您可以将map
与列表理解结合使用。
d=[map(int,i) for i in d]
对于python 3.x,请使用:
d=[list(map(int,i)) for i in d]
答案 1 :(得分:1)
只使用列表理解:
>>> d = [['2012', '11', '14'], ['2012', '11', '13'], ['2012', '11', '12']]
>>> i = [[int(x) for x in l] for l in d]
>>> i
[[2012, 11, 14], [2012, 11, 13], [2012, 11, 12]]
我认为你的问题是它是一个嵌套列表所以迭代(int(x))到d
试图将列表转换为整数
答案 2 :(得分:1)
嵌套列表理解很有效:
d = [[int(x) for x in sublist] for sublist in d]