在python中使用execfile的NameError

在python中使用execfile的NameError,第1张

在python中使用execfile的NameError

在第二种情况下,您将需要

import
(不确定“ mainprogram.py”是否在您的上
$PYTHONPATH

#mainprogram.pyclass mainprogram:    def runme(self):        execfile("my2ndscript.py")    def bleh(self):        print "bleh"if __name__ == '__main__':    mainprogram().runme()#my2ndscript.pyimport mainprogramx = mainprogram.mainprogram()x.bleh()

但这会创建的第二个实例

mainprogram
。或者,更好的是:

#mainprogram.pyclass mainprogram:    def runme(self):        execfile("my2ndscript.py", globals={'this': self})    def bleh(self):        print "bleh"if __name__ == '__main__':    mainprogram().runme()#my2ndscript.pythis.bleh()

我想这毕竟

execfile
不是解决您问题的正确方法。您为什么不使用
import
__import__
(并且
reload()
如果脚本在两次点击之间发生变化)?

#mainprogram.pyimport my2ndscriptclass mainprogram:    def runme(self):        reload(my2ndscript)        my2ndscript.main(self)    def bleh(self):        print "bleh"if __name__ == '__main__':    mainprogram().runme()#my2ndscript.pydef main(program):    program.bleh()


欢迎分享,转载请注明来源:内存溢出

原文地址: https://outofmemory.cn/zaji/5674652.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-12-17
下一篇 2022-12-16

发表评论

登录后才能评论

评论列表(0条)

保存