从python中的另一个脚本调用时使用子进程的错误

时间:2017-11-09 05:37:36

标签: python subprocess

我试图使用子流程来调用另一个脚本,但作为一个初学者,我还没到达那里。

第一个脚本定义变量,它将保存在不同的位置,因此它不具有绝对路径。

第二个脚本调用第一个脚本中的变量,并使用它们来完成它的工作。该脚本将保留在同一目录中。

这是我到目前为止所拥有的

script1.py:

SELECT COUNT( bilno ) 
FROM trans_master
WHERE dt
BETWEEN 25-10-2017
AND 03-11-2017
AND refid=1

script2.py:

import os
import sys
import subprocess

x = 'VALUE'

import subprocess
subprocess.call(["python", "/mnt/scratch/script2.py"])

看起来非常基本,但出现的错误是:ImportError:没有名为x的模块

干杯

1 个答案:

答案 0 :(得分:0)

如果脚本1.py在某个文件夹中,则假设为D:\ Users \ Desktop \ Test 您的Script2.py在其他文件夹中

使用sys.path提供script2.py中文件1的文件夹位置的路径,该路径应该可以使用

import sys
import subprocess
sys.path.append('D:\Users\Desktop\Test')
from script1 import x
print x