pymongo如何提取按数据库中document字段存储顺序存储的所有key。

RT.
最近在做数据预处理方面的东西,想在代码里用一个list来存放所有的key,然后通过传入指定column的下标来提取相应条目的字段信息。最好list中key的顺序固定,比如mongodb中document存储key的顺序。由于find_one等相关方法返回的是dict类型,所以是乱序,想问下有什么方法提取所有的key并按其在数据库中存储的顺序存放?

阅读 5.6k
2 个回答

要注意JSON对键值对的定义本来就是无序的,数据库也不会保证一定按什么顺序存储BSON对象。所以不要依赖这个顺序来做任何事情。

试试这样:

  1. 设定一个 key list 及 用于生成 OrderDict 的工具;

  2. 正常存入 mongo;

  3. 查询结果,使用上面的『生成 OrderDict 的工具』生成一个 OrderDict 实例对象。

不知这样是否可以满足你的需求。但如果你这个对象又要使用 JSON 之类的方法来传输的话,顺序可能又会乱掉。

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题