在Python类中创建实例
我正在尝试在Python中创建一个类的新实例。我参考了这里的解决方案:Python中的实例
但是没有成功。我的主要类是
if __name__ == '__main__':
Tim = Person
movement = Person.walk()
这里的“Person”是我想要创建实例的类名。这个类里面有我想使用的方法。
不过,我一直收到这个错误:
Undefined Variable:Person
我还尝试在实际的方法中声明类实例,而不是在初始化方法(init)中,但我得到了同样的错误。
欢迎任何建议。谢谢!
3 个回答
0
你需要用括号来调用构造函数。
Tim = Person()
现在你这样写,Tim = Person
被理解为把变量 Tim
赋值为 Person
的值,但 Person
这个变量还没有定义。
2
你只需要加一些括号:
Tim = Person()
这告诉Python去访问构造函数。
不过你提供的代码让我觉得你可能没有定义一个叫做Person
的类。你的代码应该有一个class 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
2
更正:如果你想创建一个类的实例,并用这个实例来调用类里面的方法,请在类名后面加上括号。
if __name__ == '__main__':
Tim = Person()
movement = Tim.walk()
或者这样做,但不太推荐。
if __name__ == '__main__':
movement = Person().walk()