【问题标题】:launching a python 2.7 script from a Python 3 script从 Python 3 脚本启动 python 2.7 脚本
【发布时间】:2023-03-27 22:32:02
【问题描述】:

我正在尝试从 Python 3.6 脚本启动名为 pp.py 的 python 2.7 脚本。

我正在使用 Windows 7

这是 2.7 的脚本:

#! C:\Python27\python.exe

import sys

sys.stdout.write("Hello from version %s\n" % (sys.version,))

如果我从 cmd 窗口启动它,它会返回它正在使用 2.7 版本, 但如果我使用此指令从 3.6 脚本调用它:

exec(open("pp.py").read())

然后它会回答它正在使用 Python 3.6

有什么想法吗?

【问题讨论】:

    标签: python-2.7 compatibility


    【解决方案1】:

    Python exec 在当前版本中执行一串代码。 我认为您必须使用所需的 python 版本运行一个新进程。 如果您需要读取返回值,请使用 Pipes,如 here 所述

    按照here这一步,你就会区分python 2和3(或者在linux中使用别名)。

    然后,您可以使用Process 类来运行您的脚本。

    【讨论】:

      猜你喜欢
      • 2013-02-08
      • 1970-01-01
      • 1970-01-01
      • 2010-10-17
      • 1970-01-01
      • 2021-12-28
      • 2023-03-13
      • 2014-09-14
      • 2019-12-24
      相关资源
      最近更新 更多