我是python的新手,在将变量传递给我编写的新模块/程序中的函数时遇到了一些麻烦。
我在这里使用2个独立的程序/模块:xmlgen.py
和JobHandler.py
。 Jobhandler必须将变量从其函数之一传递到xmlgen 中的函数(以便xmlgen.py
可以基于JobHandler.py
中的变量生成xml文档)。
这是xmlgen.py
中的函数:
from lxml import etree
from Faxer import coverPage, ourOrg, ourPhonenum, ourFaxnum, emailAddr,
sendReceipt, webAddr, comments
def generateXml(destOrg, destFax, cliName, casenum, attachments, errEAddr, comment, destName):
#xml file structure
root = etree.Element('schedule_fax')
#***
#irrelevant xml stuff
#***
grandchild_recipient_name = etree.Element('name')
grandchild_recipient_name.text = cliName
child_recipient.append(grandchild_recipient_name)
#more similar xml fields with the other variables used
这是我在主JobHandler.py
程序中创建的函数,用于将变量作为参数从前一个函数传递到xmlgen模块中的generateXml()
。 (job.destOrg等)参数是先前在主Jobhandler程序中的较早函数中定义的。
def createXml(self, job):
xmlgen.generateXml(job.destOrg, job.destFax, job.cliName, job.casenum, job.files, job.staffEmail, job.comment, job.destName)
现在,当我运行此命令时,不会创建xml文档。我知道它可以工作,因为当我从xmlgen.py中删除该函数并运行它时,它会正确创建一个空白的xml文档。因此,我怀疑我没有正确调用该函数。我有没有在做一些真正需要调用该功能的事情?