实际上在我们创建一个类(class)的时候,一个了类对象(class obejct)就已经以同样的名字创建了.这个类对象允许我们获取不同的属性,就是创建了一个实例对象一样。
例一:
class MyClass:
a = 100
def disp_info(self):
print("Hello")
print(MyClass.a)
print(MyClass.disp_info)
运行结果如下:
100
<function MyClass.disp_info at 0x000001F6DB8552F0>
上面这里例子,我们注意下 “类名.函数名” 这个后面没有加“()”,输出的指向这个单元的地址。
我们稍微改下这个例子:
例二:
class MyClass:
a = 100
def disp_info(self):
print("Hello")
print(MyClass.a)
t = MyClass()
print(MyClass.disp_info(t)) # 方法1
print(MyClass.disp_info(MyClass)) # 方法2
输出结果:
100
Hello
None
Hello
None
这里看到有的人使用方法1,但是我使用方法2后发现结果也是一样的。