我正在努力提高我的python技能,而且我正在编写类,但我似乎遇到了一个非常令人困惑的错误。尽管导入了包含我的类的.py文件,但python坚持认为该类实际上并不存在。
class def:
class greeter:
def __init__(self, arg1=None):
self.text = arg1
def sayHi(self):
return self.text
main.py:
#!/usr/bin/python
import testclass
sayinghi = greeter("hello world!")
print sayinghi.sayHi()
现在据我所知,我已经将所有文档都跟踪到了't',我甚至将参数初始化为None,因为eval时间与创建时间限制等等似乎是某些人的问题,我已经确定 init 是第一个定义的函数,但仍无济于事,虽然我有一个理论认为导入不能正常工作......任何帮助都会非常感激。
答案 0 :(得分:31)
使用完全限定名称:
sayinghi = testclass.greeter("hello world!")
有import
的替代形式会将greeter
带入您的命名空间:
from testclass import greeter
答案 1 :(得分:15)
import testclass
# change to
from testclass import greeter
或
import testclass
sayinghi = greeter("hello world!")
# change to
import testclass
sayinghi = testclass.greeter("hello world!")
您导入了模块/包,但您需要引用其中的类。
您也可以这样做
from testclass import *