从另一个运行Python脚本并传递变量和输出

时间:2015-10-06 17:50:44

标签: python apache fastcgi wsgi fcgid

在寻找有关在Python脚本之间传递变量和输出的教程时,我找不到任何可以在我的示例中使用WSGI Server的示例。

我想在HTML中返回输出(和变量),而不是只在控制台中看到它。

从我发现的另一个调用python脚本的最佳解决方案是 subprocess ,但我仍然无法在我的Web浏览器中看到脚本1和脚本2的合并输出,只能在控制台中看到。

脚本1:

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

from cgi import escape
import sys, os
from flup.server.fcgi import WSGIServer
import subprocess

def app(environ, start_response):
    start_response('200 OK', [('Content-Type', 'text/html')])

    yield '<h1>Test - Python pass output and variables</h1>'
    yield '<p>Script 1</p>'
    yield subprocess.check_output(["python", "script2.py"])

WSGIServer(app).run()

脚本2:

#!/usr/bin/env python
# -*- coding: UTF-8 -*-

print "<p>Script 2</p>";

1 个答案:

答案 0 :(得分:1)

如果你想在python中的脚本之间传递变量,可以这样做:

Script1.py:

def passVars():
    variable = "bla"
    return variable

Script2.py:

import Script1 as sc1

var = sc1.passVars()