在参数为path的另一个python文件中执行python

时间:2017-05-10 22:06:15

标签: python windows python-2.7

我对python比较陌生。我试图在另一个文件"plotting.py"中调用python文件"main.py"。要执行"plotting.py"文件,路径也应该作为参数给出。

所以在"main.py"我已经执行了

z='Stream 20170424 15_20_25_856' os.system('python plotting.py '+z)

变量z是文件夹的名称,这个名称通常包含空格,当我执行"main.py"时,它会出错。但是当我用_替换文件夹名称中的空格并相应地更改变量z并执行"main.py"时它会执行而不会出错。但我不能每次都更改文件夹的名称。那么是否有可能执行代码更改文件夹名称并提供变量z已提到?

2 个答案:

答案 0 :(得分:0)

如果您确实不想删除文件夹名称中的空格,请在变量\中的空格前面添加反斜杠z,以便对其进行限制。

答案 1 :(得分:0)

由于您将python作为命令行程序调用,因此可以尝试在传递的参数周围添加引号,以便将空白字符串视为一个参数。当运行这样的命令时,如果你没有引号,那么它会将每个以空格分隔的字符串视为脚本的单独参数,这就是_为你工作的原因。因此,当您希望它只是1个参数时,您当前的代码将“Stream”“20170424”和“15_20_25_856”作为3个单独的参数传递给plotting.py。

尝试

os.system("python plotting.py '"+z + "'")