使用参数&执行脚本Python中的其他路径和捕获异常

时间:2016-01-20 14:13:01

标签: python python-3.x

我应该检查HW的大型课程,我想做的一件事就是确保学生真正提交了可运行的代码。

我写了一个剧本,经过大量的工作,我仍然没有按照我想要的方式工作:

我通常使用Spyder IDE。在那里,你可以打开一个脚本,点击Run然后运行脚本。相对进口工作。但是,尽管我尝试了所有尝试,但在尝试运行脚本时,我的代码仍然会出现异常,否则会有效。

# imports:
import os
from os.path import join
from runpy import run_path
import sys

root = "path/to/folder"
dir = ["list", "of", "directories", "in", "root", "folder"]
prev_path = sys.path[:]
for _dir in dirs:
            sys.path.append(join(root,_dir))
sys.path.append(root)
sys.argv = [sys.argv[0]] + params[1].split(" ")
    try:
        run_path(join(root,FileNames[1]),{'sys.argv':sys.argv},run_name="__main__")
    except Exception as e:
                    #make a note of it
sys.argv = [sys.argv[0]]

有时它会起作用,但它几乎总是给我一些异常,这似乎是导入失败的结果,这些异常位于正在执行的代码所在的文件夹的子文件夹之一。

此外,更改sys.pathsys.argv似乎不是正确的方法,但我没有尝试过任何其他工作,所以...有更好的方法吗?

0 个答案:

没有答案