在python中的类中创建实例

在python中的类中创建实例,python,class,methods,Python,Class,Methods,我正在尝试用Python创建一个类的新实例。我在这里尝试了解决方案: 但它不起作用。所以,我的主要课程是 if __name__ == '__main__': Tim = Person movement = Person.walk() 其中“Person”是我要创建的类的名称和实例。它有我想要使用的方法 不过,我一直会遇到这样的错误: Undefined Variable:Person 我还尝试在实际的metho中声明类实例,而不是init,但我得到了相同的错误 欢迎提出任

我正在尝试用Python创建一个类的新实例。我在这里尝试了解决方案:

但它不起作用。所以,我的主要课程是

if __name__ == '__main__':
    Tim = Person
    movement = Person.walk()
其中“Person”是我要创建的类的名称和实例。它有我想要使用的方法

不过,我一直会遇到这样的错误:

Undefined Variable:Person
我还尝试在实际的metho中声明类实例,而不是init,但我得到了相同的错误


欢迎提出任何建议。谢谢

您只需要添加一些括号:

Tim = Person()
这告诉python访问构造函数

但是,您提供的代码告诉我,您可能没有定义类
Person
。您的代码应该定义一个
类人员

class Person:
    def walk(self):
        print "I'm walking!"

if __name__ == "__main__":
    Time = Person
    movement = Person.walk()
    print movement
或者您需要调用
import
class-Person

from my_other_python_file import Person

if __name__ == "__main__":
    Time = Person
    movement = Person.walk()
    print movement

您只需要添加一些括号:

Tim = Person()
这告诉python访问构造函数

但是,您提供的代码告诉我,您可能没有定义类
Person
。您的代码应该定义一个
类人员

class Person:
    def walk(self):
        print "I'm walking!"

if __name__ == "__main__":
    Time = Person
    movement = Person.walk()
    print movement
或者您需要调用
import
class-Person

from my_other_python_file import Person

if __name__ == "__main__":
    Time = Person
    movement = Person.walk()
    print movement

更正:如果要创建该类的实例并使用该实例调用该类内的方法,请在类后使用括号

if __name__ == '__main__':
    Tim = Person()
    movement = Tim.walk()
或者,但不太推荐

if __name__ == '__main__':
    movement = Person().walk()

更正:如果要创建该类的实例并使用该实例调用该类内的方法,请在类后使用括号

if __name__ == '__main__':
    Tim = Person()
    movement = Tim.walk()
或者,但不太推荐

if __name__ == '__main__':
    movement = Person().walk()

您需要有括号才能调用构造函数

Tim = Person()

现在,
Tim=Person
被解释为赋值
Tim
尚未定义的变量
Person
的值。

需要有括号才能调用构造函数

Tim = Person()

正如您现在看到的,
Tim=Person
被解释为赋值
Tim
未定义的变量
Person
的值。

我得到了相同的错误。这些类必须在同一个文件中吗?也许这就是问题所在?它们在同一个目录中,只是不同而已files@Blossom96在使用
Person
类之前,您必须导入
Person
类。是的,如果该类不在同一文件中,则需要导入该模块,即定义该类的文件。导入该模块后,您可以将该类用作
module.class()
请您阅读这篇关于如何导入模块的文章,我遇到了同样的错误。这些类必须在同一个文件中吗?也许这就是问题所在?它们在同一个目录中,只是不同而已files@Blossom96在使用
Person
类之前,您必须导入
Person
类。是的,如果该类不在同一文件中,则需要导入该模块,即定义该类的文件。导入该模块后,您可以将该类用作
module.class()
请您阅读这篇关于如何导入模块的文章,这是一个奇怪的错误。您是否正确导入/定义了
Person
类?另外,您可以通过调用类来实例化它:
Person()
。这是一个奇怪的错误。您是否正确导入/定义了
Person
类?另外,您可以通过调用类来实例化它:
Person()