1

我在 Python 中有以下列表:

[('1','2','3'),('5','6','7')]

我需要以[(1,2,3),(5,6,7)]函数的方式将列表中的元组转换为 integer()。

我可以使用这个简单的代码来做一个列表:map(lambda x:int(x),['1','2','3'])

但是我应该如何将相同的概念应用于元组列表?

(我知道这样做的必要方式。)

4

3 回答 3

6
tl = [('1','2','3'),('5','6','7')]
[tuple(int(x) for x in t) for t in tl]
# [(1, 2, 3), (5, 6, 7)]

如果你真的想要map语法,

map(lambda t:tuple(map(int, t)), tl)
# [(1, 2, 3), (5, 6, 7)]
于 2012-12-07T07:18:30.657 回答
0

这种混合有效:

>>> [tuple(map(int,t)) for t in [('1','2','3'),('5','6','7')]]
[(1, 2, 3), (5, 6, 7)]
于 2012-12-07T07:42:49.893 回答
0

以下情况如何:

[tuple([int(str_int) for str_int in tup]) for tup in list_of_string_tuples]
于 2012-12-07T07:21:58.547 回答