Python 将值移出对象
我有一个mongo系列,看起来像这样Python 将值移出对象,python,arrays,python-3.x,mongodb,aggregation-framework,Python,Arrays,Python 3.x,Mongodb,Aggregation Framework,我有一个mongo系列,看起来像这样 [{ "name": "foo", "place": "Paris", "other": { "var1": "asdf", "var2": "asdf", "var3": "sdfw", etc.... } },{ "name": "Bar", "place": "Paris", "other": { "var1": "a
[{
"name": "foo",
"place": "Paris",
"other": {
"var1": "asdf",
"var2": "asdf",
"var3": "sdfw",
etc....
}
},{
"name": "Bar",
"place": "Paris",
"other": {
"var1": "asdf",
"var2": "asdf",
etc....
}
}]
我需要将数据显示如下:
[{
"name": "foo",
"place": "Paris",
"var1": "asdf",
"var2": "asdf",
"var3": "sdfw",
etc...
},{
"name": "Bar",
"place": "Paris",
"var1": "asdf",
"var2": "asdf",
etc....
}]
因此,我希望删除另一个对象,但将所有值保留在其中。
实现这一目标的最佳方式是什么。
我可以使用Python3或mongo聚合。您可以在下面使用和
您可以使用下面的和
用Python实现这一点在技术上是可行的,而且相当简单:
for obj in collection:
obj.update(obj.pop("other"))
但是,正如Anthony Winzlet在回答中所解释的那样,将其留给mongodb应该会更快。用Python实现这一点在技术上是可行的,而且相当简单:
for obj in collection:
obj.update(obj.pop("other"))
但正如Anthony Winzlet在回答中所解释的那样,将其交给mongodb应该更快。从来没有这样想过。太棒了!从来没有这样想过。太棒了!