Python 将课程价值与PyMongo进行比较
我正在尝试打印此JSON注册表中通过的所有课程:Python 将课程价值与PyMongo进行比较,python,json,mongodb,pymongo,Python,Json,Mongodb,Pymongo,我正在尝试打印此JSON注册表中通过的所有课程: "name": "Morton Fitzgerald" ,"email": "mortonfitzgerald@ontagene.com","courses":[{"course 1": 10, "course 2": 3,"course 3": 8} 我需要打印出每一个课程'x'>=5
"name": "Morton Fitzgerald" ,"email": "mortonfitzgerald@ontagene.com","courses":[{"course 1": 10, "course 2": 3,"course 3": 8}
我需要打印出每一个课程'x'>=5
,脚本如下:
student = students.find_one({"$and":[{"email":data['email']},{"courses":{'$exists': True}}]})
if (student!=None):
course = students.find({},{"courses":1})
course_list = []
for student in course:
if ({"courses":{"$gte": 5}}):
course_list.append(student)
student = {"name":data['name'], course_list}
return Response(json.dumps(student), status=200, mimetype='application/json')
else:
return Response("There are no courses available for this student", status=400, mimetype='application/json')
else:
return Response("Not authenticated user", status=401, mimetype='application/json')
我得到的错误:
KeyError: 'name'
Morton Fitzgerald, "course 1": 10, "course 3": 8
所需输出:
KeyError: 'name'
Morton Fitzgerald, "course 1": 10, "course 3": 8
有什么想法吗?你试着检查一下这句话是否正确
if len(data) != 0:
或
是的,但脚本似乎没有比较for循环中的课程值。我理解您试图解释的内容,但我不理解替换哪个if语句。我猜你是指学生吧=没有一个