python 一个模块要执行其它模块主要有三种方法

python 一个模块要执行其它模块主要有三种方法
第一:import 模块或动态导入,__import__()
第二:利用os.system()
第三:利用execfile函数
请看下面三段代码。
#coding:utf-8
"""
迪艾姆公司python远程培训班黄哥所写 python远程视频培训班
https://github.com/pythonpeixun/article/blob/master/python_shiping.md
咨询:qq:1465376564
以下是贴吧网友的问题
a.py 有个对应的ini文件,如:文件a.ini的格式如下
12345
qwert
bhuio

需要在文件b.TXT里循环查找每行,若在b找到如qwert,则执行同一目录下的qwert.py 若找到12345,则执行12345.py。没有找到的话,提示没有
"""
with open("a.ini") as f1 ,open("b.txt") as f2:
    list1 = f1.readlines()
    list2 = f2.readlines()
for item in list1:
    if item in list2:
        #用变量导入模块,需要用到__import__(),模块导入后,随即也执行。被导入的模块
        #就不要将执行的代码写在if __name__ == "__main__"下,不然执行不了。
        __import__(item.strip())
    else:
        print "没有"




import os
with open("a.ini") as f1 ,open("b.txt") as f2:
    list1 = f1.readlines()
    list2 = f2.readlines()
for item in list1:
    if item in list2:
        #用变量导入模块,需要用到__import__(),模块导入后,随即也执行。被导入的模块
        #就不要将执行的代码写在if __name__ == "__main__"下,不然执行不了。
        # __import__(item.strip())
        os.system('python %s.py'%(item.strip()))
    else:
        print "没有"



with open("a.ini") as f1 ,open("b.txt") as f2:
    list1 = f1.readlines()
    list2 = f2.readlines()
for item in list1:
    if item in list2:
        #用变量导入模块,需要用到__import__(),模块导入后,随即也执行。被导入的模块
        #就不要将执行的代码写在if __name__ == "__main__"下,不然执行不了。
        # __import__(item.strip())
        # os.system('python %s.py'%(item.strip()))
        execfile('%s.py'%(item.strip()))
    else:

        print "没有"


https://github.com/pythonpeixun/article/blob/master/python_shiping.md

你可能感兴趣的:(python 一个模块要执行其它模块主要有三种方法)