Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/python/322.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/1/cocoa/3.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Python 在create(self,validated_data)方法中,“self”是什么意思?_Python_Django_Django Rest Framework - Fatal编程技术网

Python 在create(self,validated_data)方法中,“self”是什么意思?

Python 在create(self,validated_data)方法中,“self”是什么意思?,python,django,django-rest-framework,Python,Django,Django Rest Framework,在create(自我验证的数据)方法中,self的意思是什么 我有一个名为CloudServerPayrderSerializer的序列化程序,我想重写create()方法 你看,我正在重写create方法,我想让用户通过self。因此有一个util方法getUserFormSerializer 但是我不知道这里的self代表什么,它是否代表CloudServerPayrderSerializer,如果不是,我不能将util方法命名为getUserFormSerializer 它代表您调用此方法

在create(自我验证的数据)方法中,self的意思是什么

我有一个名为CloudServerPayrderSerializer的序列化程序,我想重写create()方法

你看,我正在重写create方法,我想让用户通过
self
。因此有一个util方法
getUserFormSerializer


但是我不知道这里的
self
代表什么,它是否代表
CloudServerPayrderSerializer
,如果不是,我不能将util方法命名为
getUserFormSerializer

它代表您调用此方法所依据的类的具体对象。它可以有任何名称(将其命名为this,
object
或任何您喜欢的名称),但它始终是非静态方法的第一个参数,是的,当您在实际对象上调用该方法时,后者位于点之前,而不是括号中

因此,在这种情况下,它被用作:

cspos = CloudServerPayOrderSerializer()
cspos.create(42)   # self is bound to cspos and validated_data to 42

在这个场景中,它代表什么?是的,self可以是任何其他名称,但不要试图从传统的“self”重命名,因为您可能会与其他python程序员产生无尽的混淆。这是一个基本的python问题。如果您不知道self在Python类中的用法,那么应该做一个介绍性的语言教程。
cspos = CloudServerPayOrderSerializer()
cspos.create(42)   # self is bound to cspos and validated_data to 42