簡體   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