@
ClericPy @
youthfiremacOS 自带的 Python2 是有 pythonw 的。
不过改文件名为 .pyw 并不能解决问题,因为这里的问题是 .pyw 没有关联任何打开方式,同时会出现终端窗口也是因为 .command 的打开方式是终端。
正确解决方法是让 Finder 直接把脚本作为可执行文件执行。但是即使把文件的扩展名去掉再加上执行权限,双击还是会打开终端。最终方案只有打包成 app 。
假设脚本文件名为
pygui.py ,在终端执行以下命令即可:
chmod +x ./
pygui.pymkdir -p
pygui.app/Contents/MacOSmv ./
pygui.py pygui.app/Contents/MacOS/pygui@
no1xsyzy fork 的方法不可行,macOS 下 fork 后不 exec 的话不能使用 CoreFoundation 。加了 fork 后会提示:
The process has forked and you cannot use this CoreFoundation functionality safely. You MUST exec().
Break on __THE_PROCESS_HAS_FORKED_AND_YOU_CANNOT_USE_THIS_COREFOUNDATION_FUNCTIONALITY___YOU_MUST_EXEC__() to debug.