首页 > 解决方案 > 关于方法中有函数时调用

问题描述

我写了以下代码。

代码运行没有问题,并打印为“测试”。

测试1.py

class testClass:
    def test(self):
        def test_test():
            print("test")
        return test_test

f = testClass().test()
f()

但是,如果我按如下方式重写代码,它将不会出现错误。

测试2.py

class testClass:
    def test(self):
        def test_test():
            print("test")
        return test_test

    def printTest(self):
        self.test()

f = testClass().printTest()
f()

我现在该怎么办?

标签: python

解决方案


在第二种情况下,您不会从printTest. 一个简单的

def printTest(self):
    return self.test()

会成功的。


推荐阅读