这里的正确语法是什么?获取类型 类型错误: 不可哈希类型: 'dict


query={"colourCode" : "orange" },{"createdOn":{ "$gt" : my_datetime}},{"assignmentRef":{'$ne':None}}
cursor = collection.find({query},{'createdOn':1,'assignmentRef.name':1,'_id':0,'colourCode':1})

list_cur = list(cursor)
df = DataFrame(list_cur)
print(df)
Result
TypeError: unhashable type: 'dict'

这里有什么问题?请用正确的语法重写代码,以便我能清楚地理解。

你有两个问题;查询需要构造为字典(您的查询创建了一个元组),并且查找的第一个参数只需要是query而不是{query}

这应该更接近你需要的:

import datetime
from pandas import DataFrame
from pymongo import MongoClient
db = MongoClient()['mydatabase']
collection = db.mycollection
my_datetime = datetime.datetime.now()
query = {"colourCode": "orange", "createdOn": {"$gt": my_datetime}, "assignmentRef": {'$ne': None}}
cursor = collection.find(query, {'createdOn': 1, 'assignmentRef.name': 1, '_id': 0, 'colourCode': 1})
list_cur = list(cursor)
df = DataFrame(list_cur)
print(df)

相关内容

  • 没有找到相关文章

最新更新