使用python(pymongo)在mongodb中编辑嵌入文档

时间:2016-02-19 07:13:51

标签: python mongodb

我在使用pymongo使用python更新mongodb中的集合内的文档时遇到以下错误。非常感谢任何帮助。

 x = 4
 str = "ratings.${x}.rating"
 db.amitava1.update({"_id":1},{"$inc":{[str]:1 } } )

追踪(最近一次呼叫最后一次):

  

文件"",第1行,在TypeError中:不可用类型:   '列表' ***

1 个答案:

答案 0 :(得分:2)

因为你正在做{"$inc":{[str]:1 }}而得到了这个错误。即,尝试将[str]作为字典{[str]:1 }中的关键字。

它说因为你不能使用列表作为字典的键,因为列表是不可用的。您只能使用hashable类型(定义了__hash__函数的类型)键值。

您的代码看起来还有其他一些问题。我认为你需要使用

str = "ratings.${x}.rating".format(x=x)

或某些东西,以便替换字符串中的x。