本文记录了 str 转 list 的多种情况的解决方法和 list 转 str 的解决方法。
目录
情况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]
[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'