如何在两个使用不同Python版本解释器的python脚本之间传递变量?例如,
python-script-2.4包含变量X. 将X返回到python-script-2.7进行操作
我试过这样做,但返回的值是'0'。
答案 0 :(得分:1)
据我所知,您可以使用os.system()从Python2.7脚本调用已有的Python2.4脚本。
首先,您应该在Python2.7文档中考虑Replacing os.system()。 但是这个方法的限制是你只得到你的调用的返回代码(因此你必须查看2.4脚本以确保在发生任何错误时正确使用返回代码...)。
其次,如果您需要知道stdout和stderr的内容,请使用subprocess.Popen:
#!/bin/env python
from subprocess import Popen, PIPE
command = 'read INPUT ; echo $INPUT on stdout && echo 1>&2 "Here is stderr"'
process = Popen(command, shell=True, stdin=PIPE, stdout=PIPE, stderr=PIPE)
out, err = process.communicate("Hello world")
print(out)
print("-------")
print(err)