如何通过python将字符串转换为特定格式?
如何通过python将字符串转换为特定格式 原始字符串如下:如何通过python将字符串转换为特定格式?,python,Python,如何通过python将字符串转换为特定格式 原始字符串如下: "['13.85,16.60', '12.85,17.46', '17.85,16.42']" 要转换为此格式: "[(13.85,16.60), (12.85,17.46), (17.85,16.42)]" 或者这种格式也可以: "[[13.85,16.60], [12.85,17.46], [17.85,16.42]]" 您可以使用以下方法(假设当前的Python 3版本)执行此操作: 下面是您要问的问题: str([[
"['13.85,16.60', '12.85,17.46', '17.85,16.42']"
要转换为此格式:
"[(13.85,16.60), (12.85,17.46), (17.85,16.42)]"
或者这种格式也可以:
"[[13.85,16.60], [12.85,17.46], [17.85,16.42]]"
您可以使用以下方法(假设当前的Python 3版本)执行此操作:
下面是您要问的问题:
str([[eval(y) for y in x.split(',')] for x in eval(a)])
>> '[[13.85, 16.6], [12.85, 17.46], [17.85, 16.42]]'
不过要小心 您尝试过什么?它到底有什么问题?最初的目的是通过列表索引获得
13.85,16.60
,12.85,17.46
,和17.85,16.42
。转换为特定格式时,我可以使用列表的索引,例如:使用索引[0]获取[13.85,16.60]
,使用索引[0][0]获取13.85
。但原始字符串似乎无法实现这一点。我想将'
替换为()
或[]
,您的解决方案仍然编辑了我的答案以更正此问题
str([[eval(y) for y in x.split(',')] for x in eval(a)])
>> '[[13.85, 16.6], [12.85, 17.46], [17.85, 16.42]]'