gpt4 book ai didi

python - 将字典/json 键转换为 MongoDB 可接受的最快方法(将 "."和 "$"转换为其他内容)

转载 作者:行者123 更新时间:2023-12-03 16:00:09 24 4
gpt4 key购买 nike

TLDR:替换所有包含“.”的键的最快方法是什么?或者带下划线的“$”?

<小时/>

对于任何使用 MongoDB 的人来说,这并不奇怪,但你不能有“.”。或“$”作为文档中的任意键。如果您首先是所有 key 的创建者,那么这很容易,因此只需明智地选择您的名称即可。就我而言,我通过从外部 API 获取数据,因此我无法对他们的约定做任何事情...

我意识到我可以像这样一一转换每个单独的键:

APIdict[key_num_1] = APIdict.pop(key.num.1)
APIdict[key_num_2] = APIdict.pop(key.num.2)
APIdict[key_num_3] = APIdict.pop(key.num.3)
...

但这假设我事先知道所有的键,并且可能会变得困惑/冗长。

有没有办法解析字典中的所有键并重命名所有包含“.”的键。与使用下划线的相应键?

最佳答案

可能并不理想,但我使用字典理解在一行中创建了一本新字典......

假设“a”是你的“坏”字典。

a_cleaned = {key.replace(".","_"): a[key] 为 a.keys() 中的键}

感谢 Valentin Lorentz 的改进:

a_cleaned = {key.replace(".","_"): value for (key, value) in a.items()}

关于python - 将字典/json 键转换为 MongoDB 可接受的最快方法(将 "."和 "$"转换为其他内容),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37368005/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com