我有声明类
的功能>>> def a():
... class A:
... print "a"
...
当我调用函数时,为什么要打印a
?
>>> a()
a
答案 0 :(得分:5)
因为那是你告诉它的事情。在class
块中编写的代码没有什么特别之处,除了赋值将成为属性,其中定义的正常函数将转换为方法。所有其他代码只是......执行。
答案 1 :(得分:5)
print "a"
在创建类A
(不是A
的实例)时执行,而a()
正在创建该类。
通常,它对设置类变量等非常有用。
答案 2 :(得分:2)
print "a"
- 当你调用函数时会发生这种情况。