SwiftyPython

这是一个 Swift 包管理器软件包,用于在 Mac 应用程序中轻松嵌入 Python。目前正在努力开发一个也能在其他 Apple 平台上运行的软件包。这个软件包是“通用的”,意味着它应该可以在 intel 或 amd 硬件上工作。

要在应用程序中添加 Python,只需包含 SwiftyPython 软件包。这将公开两个可以导入的 Swift 模块。一个是 PythonSupport —— 它是从 Swift 调用 Python 代码的 Swifty 接口。另一个是 PythonWrapper,它提供从 Swift 直接访问 Python C API 的能力。

该软件包目前捆绑了(除了标准库之外):

这个列表很容易扩展。

除了这些内置软件包之外,用户可以在应用程序中提供一个包含 SwiftyPython 的 requirements.txt 文件,这些文件将作为构建过程的一部分安装到应用程序的虚拟环境中。这个软件包包含一个演示应用程序 (Demo),演示了如何使用 SwiftyPython。Demo 应用程序将 SwiftyPython 作为“本地”软件包包含在内 —— 你应该使用 githb URL 代替。

导入 SwiftyPython 的 Mac 应用程序应该有一个名为 venv 的文件夹。PYTHONPATH 将包含 venvvenv/site-packagesrequirements.txt 将在此处安装软件包)。

使用 SwiftyPython 构建应用程序

已知问题

尽管我收集了 Python 标准输出,但在 Demo 应用程序中,它目前被记录到控制台,而不是显示在 “stdout” 窗口中。