如果出于某种原因使用此函数打印python类的层次结构,则输出中不会显示“float”类型。在
def printHier(cls, indent = 0, tab = " "):
print "%s%s" % (tab*indent, cls.__name__)
try:
subclasses = cls.__subclasses__()
except TypeError:
subclasses = cls.__subclasses__(cls)
subclasses.sort(key = lambda v: v.__name__)
for subcls in subclasses:
printHier(subcls, indent = indent + 1)
printHier(object)
如果我定义这个附加函数(如下)并在调用第一个函数之前调用它,那么float就会出现。有人能解释这种奇怪的行为吗?python有什么懒惰的地方吗?我想知道它是否也会错过其他的课程。在
^{pr2}$
这似乎是Python2.6.1的一个问题。
float
显示在我的安装(2.6.4和2.7,都在Windows上)和Jay和samplebias测试的其他较新版本上。在我在cpythonchangelog中寻找了一些相关的东西,但是我找不到任何似乎相关的东西。在
相关问题 更多 >
编程相关推荐