首页 > 解决方案 > 如何在更新字典时从字符串变量中转义引号

问题描述

我正在尝试使用新的键值对更新现有字典。但是更新字典将单引号添加到值字段。该字典用于 mongo 查询,因此每当我在 dictionay.update(key:value) 中替换 value 变量时都需要清除额外的引号

我尝试使用 eval 和 json.loads。但这并不富有成效。请提供任何建议。

mquery ={"type" : "search"}

skey = "ZXCV,YBC"

skey = '{"$in": [/' + skey.replace(',','/,/') + '/]}'

print(skey)

if skey is not None : mquery.update({"skey1" : skey})

print(mquery)

预期的 - {'type': 'search', 'skey1': {"$in": [/ZXCV/,/YBC/]}}

当前的 - {'type': 'search', 'skey1': '{"$in": [/ZXCV/,/YBC/]}'}

标签: pythonjsondictionarypymongo

解决方案


重新进口

db.qu1.find({'type': 'search', 'skey1': {'$in': [re.compile('. ZXCV. | .YBC . ')]}}

这就是RE的答案。


推荐阅读