马春杰杰 Exit Reader Mode

[mcj]Python类实例化时带括号与不带括号的区别

class Dog:
    def __init__(self,name="doudou"):
        self.name1 = name
        fur = "black"

带括号实例化,

d1 = Dog()
    print(d1.name1)
#doudou

不带括号实例化:

d1 = Dog
d2 = d1()
print(d2.name1)
#doudou

其实不带括号的话,相当于d1=Dog类,在用的时候,我们完全可以把d1当做Dog类来使用。两者是完全相等的。

所以这时,如果对d1做了操作,Dog也会同时被操作。比如:

d1 = Dog
d1.name1 = "huahua"
print(d1.name1)
print(Dog.name1)
#huahua
#huahua

 

本文最后更新于2019年12月29日,已超过 1 年没有更新,如果文章内容或图片资源失效,请留言反馈,我们会及时处理,谢谢!