【问题标题】:Launch Python script in new terminal在新终端中启动 Python 脚本
【发布时间】:2017-02-11 22:20:31
【问题描述】:

我想从另一个脚本在新的 macOS 终端窗口中启动一个 python 脚本。我目前正在使用此代码:

subprocess.call(['open', '-a', 'Terminal.app', '/usr/bin/python'])

在新的终端窗口中启动 python 提示。 但是当我尝试使用此代码运行 python 脚本时:

subprocess.call(['open', '-a', 'Terminal.app', '/usr/bin/python', 'test.py'])

它完全忽略最后的'test.py' 并启动 python 提示符,就像它在最后没有 test.py 一样。

我怎样才能做到这一点?

【问题讨论】:

标签: python macos python-2.7 subprocess terminal.app


【解决方案1】:

不要使用open -a terminal.app,只需使用 python 可执行文件

subprocess.call(['/usr/bin/python', 'test.py'])

【讨论】:

  • 澄清一下,我需要在终端窗口中使用它,以便我的脚本用户可以看到输出并与脚本交互。感谢您的回答!
【解决方案2】:

这段 Python 代码将打开一个新的终端窗口,然后让 python3 运行 test.py:

import os
os.system("""osascript -e 'tell application "Terminal" to do script "python3 test.py"'""")

我无法想出办法将其转入subprocess.call() 电话。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-11-07
    • 1970-01-01
    • 1970-01-01
    • 2018-12-12
    • 1970-01-01
    • 1970-01-01
    • 2022-01-19
    • 1970-01-01
    相关资源
    最近更新 更多