python : getting into imbedded document

标签 python mongodb integer

我有一个数据库“记录”,其中包含以下类型的文档:

{ ..., ..., "grades" : {"good": "40.0", "bad":"22.0"}}
  1. 我需要进入文档并将变量定义为“好”和“差”成绩的总和。
  2. 我不知道如何进入嵌入式文档,

我试过了:

for i in records:
    variable = i['grade.good']

但这似乎行不通。

其次,成绩是字符串,我需要将它们转换为整数/ 再次尝试

total = int(i['grade.good']) + int(i['grade.bad'])

但那也错了。 请注意,我的字符串是 float 帮助非常感谢!!

最佳答案

代替 i['grade.good'] 试试 i['grade']['good']

正确地从字典中检索数据

In [11]: d = {"grades" : {"good": "40", "bad":"22"}}

In [12]: d['grades']['good']
Out[12]: '40'

In [13]: total= int(d['grades']['good']) + int(d['grades']['bad'])

In [14]: total
Out[14]: 62

对于 float

In [21]: d = {"grades" : {"good": "40.0", "bad":"22.0"}}

In [22]: print float(d['grades']['good']) + float(d['grades']['bad'])
62.0

关于 python : getting into imbedded document,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13492384/

相关文章:

python - 如何在Python中检查视频是否有声音?

python - 如何将字符串解析为 float 或 int?

node.js - Mongoose 中的排序无法正常工作

node.js - 如何处理 MongoClient 中的超时错误?

mongodb - 我无法使用 angular 2 发布到我的 mongodb 服务器

c - 使用整数常量的宏初始化对象

javascript - javascript 如何处理大整数(超过 52 位)?

python - sklearn OneHotEncoder输出非数组对象错误

python - 适用于 Linux (WSL 2) 和 Jupyter Lab 的 Windows 子系统 : How to open a Jupyter Notebook saved at the Linux file system?

python - python中的正则表达式 *