在新终端中启动Python脚本

时间:2016-10-03 21:23:22

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

我想在另一个脚本的新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一样。

我该如何做到这一点?

2 个答案:

答案 0 :(得分:0)

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

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

答案 1 :(得分:0)

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

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

我无法提出一种方法来进行subprocess.call()通话。

相关问题