如何将 python in one/two 行中的列表转换为 int?

how do you convert a list into a int in python in one/two lines?

如果你想将一个列表转换成一个整数

你可以使用

x = ""
the_list = [5,7,8,6]
for integer in the_list:
       x+=str(integer)
ans = int(x)
#output
5786

有更短的方法吗? 感谢您的帮助

如果您的列表是以下形式:[1,5,3,11]

您可以使用:

lst = [1, 5, 3, 11]
x = int("".join([str(x) for x in lst]))
>>> x
15311

str 有一个 join 方法,它将列表作为参数并通过给定的字符串连接每个元素。

例如,您可以创建逗号分隔行:

the_list = ["foo", "bar"]
print(",".join(the_list))

结果:

foo,bar

记住,列表中的所有元素都必须是字符串。所以你应该先映射它:

the_list = [1, 2, 3, 4]
print(int("".join(map(str, the_list))))

结果:

1234

sum() 函数将对列表中的所有元素求和。

示例:

ints = [1, 3, 5, 7]
print(sum(ints, 0))

其中 0 是起始索引,ints 是您的列表(不是必需的)

你可以为此做的是使用列表理解将你的值列表转换为字符串列表。然后您可以使用 .join 方法将字符串列表连接在一起。例如:

string_list = [str(num) for num in list]
integer = "".join(string_list)

带有列表的示例:

list = [3, 4, 5]

string_list = [str(num) for num in list]
integer = "".join(string_list)

print(integer)

输出: 345

.join() 方法允许您将字符串列表值与在 "" 引号中指定的所需字符组合在一起。列表理解是在列表内创建 for 循环的快捷方式。