繁体   English   中英

将列表转换成逗号分隔并在python中添加引号

[英]Converting a list into comma separated and add quotes in python

我有 :

val = '[12 13 14 16 17 18]'

我希望有:

['12','13','14','16','17','18']

我已经做好了

x = val.split(' ')
y = (" , ").join(x)

结果是

'[12 , 13 , 14 , 16 , 17 , 18 ]'

但也不是确切的引号

在Python中执行此操作的最佳方法是什么?

你可以做到

val.strip('[]').split()

仅当您可以处理regex

import re

val = '[12 13 14 16 17 18]'
print(re.findall(r'\d+', val))

# ['12', '13', '14', '16', '17', '18']
>>> val
'[12 13 14 16 17 18]'
>>> val.strip("[]").split(" ")
['12', '13', '14', '16', '17', '18']

您可以使用此:

val = '[12 13 14 16 17 18]'
val = val[1:-1].split()
print(val)

输出:

['12', '13', '14', '16', '17', '18']

如果您真的需要戴面具

val = '[12 13 14 16 17 18]'
val = val.replace('[','')
val = val.replace(']','')
val = val.split(' ')

您可以在用逗号替换空格后使用ast.literal_eval

from ast import literal_eval

val = '[12 13 14 16 17 18]'
res = list(map(str, literal_eval(val.replace(' ', ','))))

print(res, type(res))

['12', '13', '14', '16', '17', '18'] <class 'list'>

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM