在Python中激活方法

Fra*_*els 0 python

我正在尝试在类中设置我的Python程序.但是当我有这个:

class program:

    def test(value):
        print value + 1

    def functionTest():
        a = test(2)

    if __name__ == "__main__":
        functionTest()
Run Code Online (Sandbox Code Playgroud)

我收到错误:NameError:未定义全局名称'test'

我需要做些什么来"激活"测试方法?非常感谢!

Jac*_*cob 6

class Program:
    def test(self, value):
        print value + 1

    def functionTest(self):
        a = self.test(2)

if __name__ == "__main__":
    myprog = Program()
    myprog.functionTest()
Run Code Online (Sandbox Code Playgroud)
  1. 你必须self作为一个参数提供
  2. 你必须打电话testself.test()
  3. 你必须实例化程序(在你的类中创建一个对象)
  4. 您必须在该对象上调用该方法
  5. 实例化对象并调用方法的代码不应该在您的类中(错误的缩进)

以上所有假设你实际上想要一个类并在你的代码中使用它.如果没有,请看看@ brandizzi的答案


bra*_*zzi 5

你不需要一个类来做你想做的事情。实际上,使用一个是没有意义的。只需这样编写代码:

def test(value):
    print value + 1

def functionTest():
    test(2)

if __name__ == "__main__":
    functionTest()
Run Code Online (Sandbox Code Playgroud)

类非常重要和有用,但我敢打赌你已经开始学习 Python 了。因此,需要一段时间才去使用类来看看功能,命令等:)(另外,不要忘了阅读教程-这是必不可少的