首页
学习
活动
专区
工具
TVP
发布
社区首页 >问答首页 >将整数列表转换为整数python

将整数列表转换为整数python
EN

Stack Overflow用户
提问于 2018-06-12 07:15:44
回答 4查看 1.9K关注 0票数 1

我有一个整数列表:

代码语言:javascript
复制
lists = [8,7,2]

我希望它是:

代码语言:javascript
复制
result = 872

我可以通过以下方式来实现:

代码语言:javascript
复制
result = 0
for count, i in enumerate(reversed(lists)):
    result += i*(10**count)

它起作用了。但我认为应该有另一种更好、更快的方法。提前感谢

EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2018-06-12 07:18:53

你可以试试这个

代码语言:javascript
复制
int("".join(list(map(str,lists))))

将所有整数映射到字符串,然后将它们连接起来,并将它们转换回整数。

票数 5
EN

Stack Overflow用户

发布于 2018-06-12 07:22:36

你也可以这样做

代码语言:javascript
复制
from functools import reduce
reduce(lambda x,y: 10*x+y, (lists))

不需要转换成字符串然后再转换回来。

(出于完整性的考虑)当list可能包含大于9的数字时,您可以做一些更复杂但比转换为字符串更快的事情。

代码语言:javascript
复制
from functools import reduce
def combine(x,y):
    temp =y
    if (temp==0): 
        return x*10
    while(temp>0):
        x*=10
        temp//=10
    return x + y

reduce(combine,lists)
票数 4
EN

Stack Overflow用户

发布于 2018-06-12 08:12:38

您也可以只对字符串进行换皮操作:

代码语言:javascript
复制
lists=[8, 7, 2]
result = int((str(lists)).strip("[]").replace(", ",""))
票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/50807274

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档