【问题标题】:OOP : Name Error while trying to make a object instanceOOP:尝试创建对象实例时出现名称错误
【发布时间】:2018-10-20 01:10:28
【问题描述】:
我有一个名为 FIT 的类,保存在一个名为 manage 的文件中。
在我的主文件中,第一行看起来像这样
import manage
FITobj= FIT()
我想当我这样做时,它会调用类,这样我就可以使用像 get_balance() 这样的函数,比如 FITobj.get_balance()。但是,当我尝试运行我的程序时,我得到了name error name FIT is not defined。我是面向对象编程的新手,有人可以帮忙吗?
【问题讨论】:
标签:
python-3.x
oop
python-import
【解决方案1】:
您需要指明FIT 类的定义位置。将其更改为:
import manage
FITobj = manage.FIT()
或者
from manage import FIT
FITobj = FIT()
第一个是打字稍微多一点,但它有助于使您的代码更具可读性,因为随着您导入的次数越来越多,要跟踪所有内容的来源会变得非常困难。
【解决方案2】:
添加到@mypetlion 的答案,以避免更多的输入(但使您的程序更不可读),您可以这样做:
from manage import *
FITobj=FIT()
然后使用manage 中的其他任何东西 以及FIT。