首页 > 解决方案 > 对象引用=类名()和对象引用=类名有什么区别?

问题描述

并请解释以下代码的输出,以说明为什么我会得到代码片段相应注释部分中所写的输出:

class person():
  pass


p=person
q=person
r=person()

p.no=1
print(p.no) #output : 1
print(q.no) #output : 1
print(r.no) #output : 1
q.no=2
print(p.no) #output : 2
print(r.no) #output : 2
r.no=3
print(r.no) #output : 3
print(p.no) #output : 2

标签: pythonpython-3.x

解决方案


person指类本身,您可以将分配p.no = 1与分配公共静态成员进行比较。

person()实例化类的一个新对象person。分配liker.no = 3就像分配一个成员变量。


推荐阅读