繁体   English   中英

字符串到列表 python 转换

[英]String to list python conversion

我的输入字符串如下所示

rule = "['xor',[{'asset':'pc','operator':'=','basis':true}]]"

预期 output

 Output = ['xor',[{'asset':'pc','operator':'=','basis':true}]]

这也是我无法执行ast.literal_eval(rule)的遗留代码,因为基础具有非字符串值true ,这将引发错误“格式错误的字符串”

有什么建议做同样的事情吗?

我尝试使用rule.strip('][').split(', ') ,但 output 不是预期的格式:

["'and',[{'fact':'waived','operator':'=','basis':true}"]

如果您可以使用 eval,那么您可以在 eval 环境中定义true

>>> rule = "['xor',[{'asset':'pc','operator':'=','basis':true}]]"
>>> print(eval(rule, {'true': True}))
['xor', [{'basis': True, 'asset': 'pc', 'operator': '='}]]

我认为如果您不在这些字符串中使用元组,您可以将其解析为 json。

import json
my_data = json.loads(my_string)

这将取决于您解析的内容的详细信息,但请注意买家。

暂无
暂无

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

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