开发者

python list conversion

开发者 https://www.devze.com 2023-02-02 06:11 出处:网络
hi how to convert a = [\'1\', \'2\', \'3\', \'4\'] into a = [1, 2, 3, 开发者_开发知识库4]in one line in python ?With a list comprehension.

hi

how to convert a = ['1', '2', '3', '4']

into a = [1, 2, 3, 开发者_开发知识库4] in one line in python ?


With a list comprehension.

a[:] = [int(x) for x in a]


You can use map():

a = map(int, a)

This is an alternative to the (more common) list comprehension, that can be more succinct in some cases.


With a generator:

a[:] = (int(x) for x in a)

... list comprehensions are so ummmmm, 2.1, don't you know?

but please be wary of replacing the contents in situ; compare this:

>>> a = b = ['1', '2', '3', '4']
>>> a[:] = [int(x) for x in a]
>>> a
[1, 2, 3, 4]
>>> b
[1, 2, 3, 4]

with this:

>>> a = b = ['1', '2', '3', '4']
>>> a = [int(x) for x in a]
>>> a
[1, 2, 3, 4]
>>> b
['1', '2', '3', '4']


l = []
a = ['1', '2', '3', '4']
l = [(int(x)) for x in a]
print l
[1, 2, 3, 4]
0

精彩评论

暂无评论...
验证码 换一张
取 消