Python 获取类型错误:';功能';对象不可订阅此错误发生在API创建期间 def操作员登录检查网络(请求,电子邮件=无): data=json.load 电子邮件=数据['email'] email=email.lower() 密码=数据['password'] 如果Operator.objects.filter(email=email).count()>0: if Operator.objects.filter(电子邮件=电子邮件,密码=密码).count()>0: loginobj=Operator.objects.get(email=email,password=password) send_data={'status':'1','msg':'Login Successfull','user_id':str(loginobj.id)} 其他: 发送数据={'status':“0”,“msg':“密码不正确”} 其他: 发送数据={'status':“0”,“msg':“不正确的电子邮件”} 返回JsonResponse(发送数据)

Python 获取类型错误:';功能';对象不可订阅此错误发生在API创建期间 def操作员登录检查网络(请求,电子邮件=无): data=json.load 电子邮件=数据['email'] email=email.lower() 密码=数据['password'] 如果Operator.objects.filter(email=email).count()>0: if Operator.objects.filter(电子邮件=电子邮件,密码=密码).count()>0: loginobj=Operator.objects.get(email=email,password=password) send_data={'status':'1','msg':'Login Successfull','user_id':str(loginobj.id)} 其他: 发送数据={'status':“0”,“msg':“密码不正确”} 其他: 发送数据={'status':“0”,“msg':“不正确的电子邮件”} 返回JsonResponse(发送数据),python,django,api,Python,Django,Api,但是在操作员登录检查web中的终端文件“/home/sumit/Cricket/CricketApp/views.py”第1443行中获取此错误 电子邮件=数据['email'] TypeError:“function”对象是不可下标的好吧,它是一个函数,您已经将它分配回变量调用数据,并且您正在从中查找电子邮件属性。您可以通过以下方式从请求对象中查找有效负载: data:dict=request.data 从错误中吸取教训 Python程序中的每个数据都由对象或对象之间的关系表示 这就是Py

但是在操作员登录检查web中的终端文件“/home/sumit/Cricket/CricketApp/views.py”第1443行中获取此错误 电子邮件=数据['email'] TypeError:“function”对象是不可下标的

好吧,它是一个函数,您已经将它分配回变量调用
数据
,并且您正在从中查找
电子邮件
属性。您可以通过以下方式从
请求
对象中查找有效负载:

data:dict=request.data

从错误中吸取教训

Python程序中的每个数据都由对象或对象之间的关系表示

这就是Python对对象的描述

对象是Python对数据的抽象。Python程序中的所有数据都由对象或对象之间的关系表示。(在某种意义上,与冯·诺依曼的“存储程序计算机”模型一致,代码也由对象表示。)

Python的函数是一流的对象。这意味着,(参考:)

您可以将它们分配给变量,存储在数据结构中,将它们作为参数传递给其他函数,甚至从其他函数返回值

Python支持高阶函数。这意味着,(参考:)

高阶函数是至少执行以下操作之一、将一个或多个函数作为参数(即过程参数)或返回函数作为结果的函数

导入json >>>字符串_json='{“键”:“值”} >>>加载(字符串_json) {'key':'value'} >>> >>>data=json.load >>>类型(数据) 功能 >>> >>>数据(字符串_json) {'key':'value'} 如果你不在这里发表评论,我希望你能理解这里发生了什么。从本文中,您可以学到很多与上述概念相关的东西

参考资料:-


您希望
data=json.loads
如何工作?