Python中string和list互相转换

1. string to list

情况1:

'[1,2,3,4]'  ->  [1,2,3,4]

这里我们就要巧用python中的方法 eval() 了。根据菜鸟教程的讲解,该函数用来执行一个字符串表达式,并返回表达式的值。比如 eval('3*7') 返回的是 21 这个值,那我们用:

In [1]: eval('[1,2,3,4]')
Out[1]: [1, 2, 3, 4]

很巧妙对不对。

情况2:

'1,2,3,4'  ->  [1,2,3,4]

这个不难,根据网友们的集思广益,有很多种解法:

In [2]: list(map(int, '1,2,3,4'.split(',')))
Out[2]: [1, 2, 3, 4]

In [3]: [int(i) for i in '1,2,3,4'.split(',')]
Out[3]: [1, 2, 3, 4]

In [4]: list(eval('1,2,3,4'))
Out[4]: [1, 2, 3, 4]

情况3:

['1','2','3',4']  ->  [1,2,3,4]

这个也不难,根据网友们的集思广益,有很多种解法:

In [5]: list(map(int,['1','2','3','4']))
Out[5]: [1, 2, 3, 4]

In [6]: [int(i) for i in ['1','2','3','4']]
Out[6]: [1, 2, 3, 4]

2. list to string

[1,2,3,4]  ->  '1 2 3 4'
In [1]: ' '.join(str(i) for i in [1,2,3,4])
Out[1]: '1 2 3 4'
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

友情链接更多精彩内容