[英]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.