我有2个模块
mexec1.py
def exec1func():
print 'exec1'
exec 'c:/python27/exec2.py'
if __name__ == '__main__':
exec1func()
exec2.py
def exec2func(parm=''):
print 'exec2 parm',parm
if __name__ == '__main__':
exec2func(parm='')
从exec1.py我想只使用exec或execfile调用exec2.py的exec2func ...我不想要subprocess.Popen ..
答案 0 :(得分:2)
改为使用import
:
def exec1func():
from exec2 import exec2func
exec2func()
如果要使用完整路径导入,请使用imp.load_source
:
import imp
def exec1func():
exec2 = imp.load_source('exec2', 'c:/python27/exec2.py')
exec2.exec2func()
答案 1 :(得分:0)
最好将它作为一个模块并导入它。如果需要动态导入,请使用importlib。
mod = importlib.import_module("exec2", package=None)
mod.exec2func()