Skip to main content
 首页 » 编程设计

python之如何在 Python 中将元组转换为整数(内有示例)

2025年05月04日14tintown

我有一个元组列表:

“(1,2,3), (2,3,1)...”

我想将其更改为整数列表:

“123、231……”

我该怎么做呢?提前致谢。

请您参考如下方法:

更实用的方法:

[reduce(lambda a, x: a * 10 + x, t) for t in tuples] 

编辑:

只是为了好玩,对 JBernardo 的回答做一个小基准测试:

In [21]: %timeit [int(''.join(str(i) for i in t)) for t in tuples] 
100000 loops, best of 3: 7.54 us per loop 
 
In [22]: %timeit [reduce(lambda a, x: a * 10 + x, t) for t in tuples] 
1000000 loops, best of 3: 1.55 us per loop 

编辑 2:

Akavall 指出我的原始答案仅在元组仅具有个位数整数时才有效。

如果这对于您的用例来说是 Not Acceptable ,那么 JBernardo 的回答可能是一种更简单的方法。但只是为了好玩:

[reduce(lambda a, x: a * 10**(len(str(x))) + x, t) for t in tuples] 

或者根本不进行任何字符串转换:

from math import log10 
[reduce(lambda a, x: a * 10**(int(log10(x))+1) + x, t) for t in tuples]