Python错误:为什么python不识别我的对象的类型?

时间:2014-05-09 19:49:43

标签: python oop

class Network():
    tables = []
def readInFile():
    network = Network()
def printThing(network):
    print(len(network.tables))
def main():
    network = readInFile()
    printThing(network)
if __name__ == "__main__":
    main()

给出错误:   在printThing中文件“thing.py”,第6行     打印(LEN(network.tables)) AttributeError:'NoneType'对象没有属性'tables'

但是对象网络不是NoneType,当它在readInFile函数中实例化时,它显然是Network()类型,而类型Network()具有属性表!请帮助,谢谢

2 个答案:

答案 0 :(得分:5)

您需要返回函数中的内容。除非您的函数中包含return语句,否则它将返回None

class Network():
    tables = []

def readInFile():
    return Network()

def printThing(network):
    print(len(network.tables))

def main():
    network = readInFile()
    printThing(network)

if __name__ == "__main__":
    main()

答案 1 :(得分:1)

您的函数readInFile()没有return语句,因此始终返回None。