类型错误('模块'对象不可调用)
我有两个脚本。第一个脚本叫schemeDetails,第二个脚本是一个测试脚本,叫temporaryFile,它使用schemeDetails里的schemeSetup类来创建一个schemeSetup对象。在我尝试访问schemeSetup类里的insertScheme方法之前,一切都很顺利。
我用下面的方式导入了schemeDetails脚本:
import schemeDetails
reload(schemeDetails)
from schemeDetails import *
我可以创建schemeDetails对象,并访问它的属性
d = schemeDetails.schemeSetup() -- fine
print(d.scheme) -- fine
d.insertScheme() -- throws error
但是尝试调用insertScheme函数时却出现了错误。
我不知道为什么会这样,因为我的导入语句看起来没问题。任何建议都很感激。
from sikuli import *
import os
class schemeSetup(object):
#Uses default values
def __init__(
self,
scheme = "GM",
cardNumber = "1234567A",
month = "December",
year = "2015",
setSchemeAsDefault = True):
#Provide default values for parameters
self.scheme = scheme
self.cardNumber = cardNumber
self.month = month
self.year = year
self.setSchemeAsDefault = setSchemeAsDefault
#schemeDetails is not a sub
# class of patient. It is simply defined within the patient class
# - there is a huge difference.
#====================================================#
#schemeDetails Function
def insertScheme(self):
print("insertScheme Works")
#r = Regions()
#r.description("Patient Maintenance", "schemeDetails")
#myRegion = r.createRegion()
#myRegion.highlight(1)
#click(myRegion.find(insertSchemeButton))
#click(myRegion.find(blankSchemeEntry))
#type(self.scheme + Key.ENTER + Key.ENTER)
#type(self.cardNumber + Key.ENTER)
#type(self.month + Key.ENTER)
#type(self.year + Key.ENTER)
#type(" ")
#unticks HT link, HT linking should be in a separate function
#====================================================#
#schemeDetails Function
def editScheme(self):
print("editScheme Works")
#====================================================#
def deleteScheme(self):
pass
#====================================================#
值得注意的是,调用下面的任意函数都不会产生错误。如果我在editScheme下面加上print("Hello"),然后用s.editScheme调用这个方法,程序可以编译,但我没有任何输出。如果我运行print(s.editScheme),它返回的是None。
1 个回答
0
看起来现在问题解决了,原因是我把导入的格式改成了这个
import schemeDetails
from schemeDetails import schemeSetup
s = schemeDetails.schemeSetup()