我要替换my_string

my_string = '[[4.6, 4.3, 4.3], [8.75, 5.6, 6.6], [4.6, 4.3, 4.3]]'


这样它就给出这样的结果

my_string = '4.6x4.3x4.3 8.75x5.6x6.6 4.6x4.3x4.3'


我已经尝试过了,但这也用“ x”填充了空白处

mystring = mystring.replace("[","").replace("]","").replace(", ","x")


有没有更好的pythonic方法来做到这一点?

最佳答案

您可以使用正则表达式提取子列表的内容:

import re

s = '[[4.6, 4.3, 4.3], [8.75, 5.6, 6.6], [4.6, 4.3, 4.3]]'

' '.join(i.replace(', ', 'x') for i in re.findall(r'\[([^\[\]]+)\]', s))
# 4.6x4.3x4.3 8.75x5.6x6.6 4.6x4.3x4.3

10-08 01:44