当我运行下面的代码时,输出为“ hello”。
但是,print
语句是类pl
的一部分,而我从未创建过pl
类的实例,所以为什么执行print
语句?
class pl:
def __init__(self,a,b):
self.aa=a
self.bb=b
print("hello")
答案 0 :(得分:7)
类主体(甚至嵌套的类主体)在导入时执行(与函数或方法相对)。
演示脚本:
class Upper:
print('Upper')
class Mid:
print('Mid')
def method(self):
class Low:
print('Low')
print('method')
输出:
$ python3
>>> import demo
Upper
Mid