如何在两个都使用不同 Python 版本解释器的 Python 脚本之间传递变量?例如,
python-script-2.4 包含变量 X 将 X 返回到 python-script-2.7 进行操作
我试过这样做,但返回的值为'0'。
如何在两个都使用不同 Python 版本解释器的 Python 脚本之间传递变量?例如,
python-script-2.4 包含变量 X 将 X 返回到 python-script-2.7 进行操作
我试过这样做,但返回的值为'0'。
据我所知,您使用 os.system() 从 Python2.7 脚本调用已经存在的 Python2.4 脚本。
首先,您应该考虑在 Python2.7 文档中替换 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)