Python如何将整数列表转换为一个整数

求01111111 11111111 11111111 11111111 11111111 11111111 11111111 11111111 对应的二进制,虽然可以:

int('0111111111111111111111111111111111111111111111111111111111111111',2)
#输出:9223372036854775807

但感觉连续敲或这么多的1特别的foolish,有没有更便捷的方法?
第一种方法:

from functools import reduce
x = reduce(lambda x,y:x*10+y, [1]*63)
print(int(str(x),2))
#输出:9223372036854775807

第二种方法:

 print(int(''.join(['1']*63),2))

你可能感兴趣的:(Python基础)