在Makefile中运行Python脚本

时间:2016-07-27 14:28:29

标签: python python-2.7 makefile

我有一个Python脚本(scr1.py)调用另一个Python脚本(scr2.py),它们都在同一条路径上。当我打开CMD并运行scr1.py时,一切都运行良好。

我想在Makefile中运行scr1.py,该Makefile与脚本不在同一路径上。 scr1.py正在执行但在调用scr2.py时失败。我认为问题是scr1.py搜索Makefile目录而不是scripts目录。 我该如何解决?

代码:

import os
import scr2
fileinfo = os.stat('scr2.py')

if os.path.isfile("infofile.txt"):          
    file=open("infofile.txt",'r')       
    lm = file.read()
    file.close()
    if lm == str(fileinfo.st_mtime): 
        #Do_Something
    else:
        scr2
else:
    scr2
    file = open("infofile.txt",'w')

好的,我只想解决另一个问题。 导入另一个文件时,它会在导入行中运行此文件! 这意味着这不是导入文件的正确方法,除非您使用要运行脚本的导入行,但它太丑了。

1 个答案:

答案 0 :(得分:0)

由于两个文件都在同一目录中,如何在第二个文件名之前附加当前工作目录路径?

import os
import scr2
fileinfo = os.stat( os.getcwd() + '/scr2.py')

if os.path.isfile("infofile.txt"):          
    file=open("infofile.txt",'r')       
    lm = file.read()
    file.close()
    if lm == str(fileinfo.st_mtime): 
        #Do_Something
    else:
        scrcompile                                  
else:
    scrcompile                      
    file = open("infofile.txt",'w')