[英]Parse logical JSON data in Python
我想知道是否存在一些庫來解析包含邏輯運算符的 JSON,以將其轉換為平面查詢字符串。
假設我得到的輸入是:
{
"Children":[
{
"ID":1,
},
{
"ID":2,
},
{
"Children":[
{
"ID":3,
},
{
"ID":4,
}
],
"Type":"Or"
}
],
"Type":"And"
}
我想把它簡單地轉換成:
(3 Or 4) AND 1 And 2
你會如何在 Python 中做到這一點?
這取決於您的確切期望是什么; 特別是,如果您可以使用多余的括號,這個問題就會容易得多。
這是一個簡單的遞歸函數,錯誤檢查不充分(即,如果 JSON 不完全符合預期,則可能會引發異常):
def json_to_formula(j):
if 'Children' in j:
return '(' + f" {j['Type']} ".join(map(json_to_formula,
j['Children'])) + ')'
else:
return str(j['ID'])
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.