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'
這里有什么問題?請用正確的語法重寫代碼,以便我清楚地理解它。
uj5u.com熱心網友回復:
你有兩個問題;查詢需要構建為字典(你的創建一個元組),并且 find 的第一個引數需要只是querynot {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)
轉載請註明出處,本文鏈接:https://www.uj5u.com/houduan/340877.html
