gpt4 book ai didi

python - 为 OSX 制作可以接受参数的 Python 卡住二进制文件的正确方法是什么?

转载 作者:太空宇宙 更新时间:2023-11-04 01:41:17 24 4
gpt4 key购买 nike

我使用 py2app 从 python 脚本制作了一个 .app 包。问题是双重的:

  1. 参数模拟似乎无法正常工作,因为它不接受适用于原始 python 脚本的参数。

  2. .app bundle格式需要用“open”打开。 “open”仅支持从 OSX 10.6 及更高版本传递参数,我需要对早期 OSX 版本的支持。

为 OSX 制作可以接受命令行参数的卡住二进制文件的正确方法是什么?

最佳答案

一般来说,OS X app bundle 并非设计为从命令行启动并从命令行传递参数(正如您所注意到的,OS X 10.6 添加了一些对此的支持)。将文件传递给应用程序的标准机制是通过 Apple Events ;这用于 Finder 的 Open 文档文件命令,其类型由应用程序处理,或者当文件被拖放到 Dock 中的应用程序图标上时。 py2app 旨在打包将像标准 Mac GUI 应用程序一样使用的应用程序,特别是使用启动协议(protocol)和通过 Apple Events 接收文件。它不是为生成命令行实用程序而设计的。如果后者是您要打包的内容,只需使用普通的 Distutils method of packaging .或者,如果您的脚本只包含一个文件,您可以按照 here 中的说明将其设为独立的 shebang 脚本。 .

另请注意,虽然在 OS X 上作为成熟的应用程序运行是使用某些 GUI 界面所必需的,但 OS X 上的 Python 本身通常安​​装在框架中并从 Python.app 捆绑安装在框架内。 (对于 Apple 提供的 Python、由 python.org 安装程序安装的 Python 和 MacPorts 安装的 Python 都是如此。)当脚本由这些 之一运行时框架 Python,它们被 OS X 识别为 GUI 应用程序,无需构建自己的应用程序包。

关于python - 为 OSX 制作可以接受参数的 Python 卡住二进制文件的正确方法是什么?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4586501/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com