python:对象的实例化
要创建Team类的对象python:对象的实例化,python,initialization,Python,Initialization,要创建Team类的对象 class Team : def __init__(self): print "object instantiated" 从obj我可以访问团队类的成员。但为什么允许这样做 >>> obj = Team() object instantiated 这里提出了一些问题 为什么obj能够调用\uuuuu init\uuuuu(),\uuuuuu init\uuuuu()就像另一个方法一样 无论何时调用\uuuu init\uuuu
class Team :
def __init__(self):
print "object instantiated"
从obj
我可以访问团队类的成员。但为什么允许这样做
>>> obj = Team()
object instantiated
这里提出了一些问题
obj
能够调用\uuuuu init\uuuuu()
,\uuuuuu init\uuuuu()
就像另一个方法一样\uuuu init\uuuu()
,它都将创建一个对象(如果我在这里出错,请更正),因此y
是否应该保存另一个团队的实例
除特殊用途外,所有“魔术”(双下划线)方法都可以作为常规方法使用。
\uuuu init\uuuu
方法实际上并不创建对象实例,它只是在\uuuu new\uuuuu
方法创建对象之后初始化对象。(请注意,\uuuuu init\uuuuu
不返回任何内容,因此y
在y=obj之后将None
。\uuuu init\uuuuu()
)init
初始化。它与C++/Java中的构造函数不同,请参见y
将为None,因为\uuu init\uuu()
不会根据规范返回任何内容。
>>> y = obj.__init__()
object instantiated