将长整数列表转换为整数

vel*_*udy 8 python int list python-2.7

[112L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 123L, 124L, 125L, 126L] 
Run Code Online (Sandbox Code Playgroud)

如何将此列表转换为这些提到的值的整数值列表?我试过int()但是它返回了一个错误.伙计们好吗?

Jim*_*ard 12

您通常有很多方法可以做到这一点.您可以使用列表中理解到内置的应用int()功能,每一个单独 long的列表元素:

l = [112L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 123L, 124L, 125L, 126L]

l2 = [int(v) for v in l]
Run Code Online (Sandbox Code Playgroud)

这将返回l2具有相应int值的新列表:

[112, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126]
Run Code Online (Sandbox Code Playgroud)

或者,你可以使用map(),这是另一个内置函数,结合int()完成同样的事情:

# gives similar results
l2 = map(int, l) 
Run Code Online (Sandbox Code Playgroud)


JRo*_*ite 5

使用列表理解并将列表中的每个元素转换为整数。看看下面的代码:

>>> l = [112L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 123L, 124L, 125L, 126L]
>>> i = [int(a) for a in l]
>>> print i
[112, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126]
Run Code Online (Sandbox Code Playgroud)


SIs*_*lam 5

我会用map-

l = [112L, 114L, 115L, 116L, 117L, 118L, 119L, 120L, 121L, 122L, 123L, 124L, 125L, 126L]
print map(int,l)
Run Code Online (Sandbox Code Playgroud)

印刷-

[112, 114, 115, 116, 117, 118, 119, 120, 121, 122, 123, 124, 125, 126]
Run Code Online (Sandbox Code Playgroud)