gpt4 book ai didi

python - SwiftUI - 用 Python 和模块库打包

转载 作者:行者123 更新时间:2023-12-05 06:51:20 26 4
gpt4 key购买 nike

我的目标:在我的 Swift 项目中通过 PythonKit Python 3.9.1 导入,在那里我可以使用它将它与所需的模块“openpyxl”(用于用值填充 excel 表)打包。

这里是特定python文件开头的导入:

# some imports
import sys
from openpyxl import load_workbook # Library for editing xlsx-files
import datetime # for current date-informations
import csv # for reading csv

如您所见,我需要 Python 3,但大多数 Mac 都没有安装它。所以我想将它包含在我的应用程序中。我是 Swift 的新手,不知道如何实现这一目标。

到目前为止我做了什么:

  • 为“PythonKit”添加了 Swift 包依赖(使用 Github 链接并选择“master”分支)
  • 浏览 Google 以了解如何在 swift 项目中包含特定的 Python 版本(并使用它们来执行 Python 文件)
  • 询问 Google 如何将“openpyxl”之类的库添加到 PythonKit/Swift

你能带我进一步吗?对于如何在我的 Swift 应用程序中使用这些 python 东西的任何提示,我都很感激。如果能集成 python 库并使其在每台机器上运行,那就太好了。

最佳答案

找到解决方案:

使用 py2app 创建一个 Python .plugin 包,将其加载到 Xcode 并使用 python 二进制文件的路径。

这是您可以使用的 setup.py:

"""
This is a setup.py script to create a py2app plugin bundle
Usage:
python setup.py py2app
"""

from setuptools import setup


APP = ['RandomFile.py']
OPTIONS = {
# Any local packages to include in the bundle should go here.
# See the py2app documentation for more.
"includes": [],
}

setup(
plugin=APP,
options={'py2app': OPTIONS},
setup_requires=['py2app'],
install_requires=['openpyxl'],
)

您可以在此处找到使用 py2app 构建的文档:https://py2app.readthedocs.io/en/latest/index.html

构建插件后,我们可以将它拖到我们的 Xcode 项目中,并像这样在 Swift 中获取它的路径:

let pluginPath = Bundle.main.path(forResource: "Bridge", ofType: "plugin")

关于python - SwiftUI - 用 Python 和模块库打包,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/66190960/

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