Python:动态(加载)调用其他模块的函数

└─test
    │  main.py
    ├─0309
    │      index.py
    ├─0310
    │      index.py
    ├─0311
    │      index.py
    ├─0312
    │      index.py
    └─0313
            index.py

如上图所示,在test目录中,有一个main.py的文件,和其他几个以日期命名的文件夹,在文件夹中,都有一个index.py,每个index.py的函数命名都一样,只有一个mian().
eg:index.py

def main():
    print "main"

现在,我想在mian.py实现以下功能:
只需提供一个日期名,如:
python main.py -0311
就会执行0311/index.py中的main()方法
注:test目录下的子文件夹数量并不是固定的,每天都会新增,但index.py中的函数命名是固定的

烙印99
浏览 1250回答 3
3回答

GCT1015

import sys sys.path.append('%s' % sys.argv[1]) from index import main main()

浮云间

date = '0311' exec "from %s.index import main as %s_main" %(date, date) 0311_main()
打开App,查看更多内容
随时随地看视频慕课网APP

相关分类

Python