Swift使用PythonKit调用Python

打开Xcode项目。然后选择"File→Add Packages",然后输入软件包依赖链接:

​https://github.com/pvieito/PythonKit.git

https://github.com/kewlbear/Python-iOS.git

Python-iOS包允许在iOS应用程序中使用python模块。

用法:

Swift 复制代码
import PythonSupport

PythonSupport.initialize()

PythonKit是与Python交互的Swift框架。

用法:

Swift 复制代码
import PythonKit

let sys = Python.import("sys")

print("Python \(sys.version_info.major).\(sys.version_info.minor)")
print("Python Version: \(sys.version)")
print("Python Encoding: \(sys.getdefaultencoding().upper())")

调用示例

test.py

python 复制代码
#!/usr/bin/python3
#coding=utf8

def hello():
    print('hello world')
    return 'hello'

swift:

Swift 复制代码
import PythonKit
import PythonSupport

class PythonManager {
    func initManager() {
        //初始化
        PythonSupport.initialize()

        //导入sys模块
        let sys = Python.import("sys")
        print("Python \(sys.version_info.major).\(sys.version_info.minor)")
        print("Python Version: \(sys.version)")
        print("Python Encoding: \(sys.getdefaultencoding().upper())")
        print("Python Path: \(sys.path)")

        //运行python脚本
        PythonSupport.runSimpleString("print('hello')")

        //运行test.py文件
        let python = Python.import("test")
        let result = python.hello()
        print(result)
    }
}
相关推荐
Geek-Chow18 小时前
00 Apple Code Signing, In Depth — A Series
ios
传奇开心果编程1 天前
【Flutter踩坑排雷】第25课:ScrollController 误用坑|跳转失效、监听泄漏与“控制器未附加”
android·flutter·ios·移动开发·跨平台·dart·声明式ui
90后的晨仔1 天前
macOS 27 下两个 Xcode 坑:真机 DDI 错配与模拟器 App Translocation
ios
开心猴爷1 天前
iOS 上架 App 流程
后端·ios
奶油话梅糖1 天前
用 iPhone 扫一间房,AI 帮你在浏览器里 1:1 重建它:Wes Bos 的 scan-to-threejs 工作流
人工智能·ios·iphone
茶底世界之下2 天前
阴天窗边的柿子:用 Awaking 让暖色成为主角
ios·app·产品
kango2 天前
iOS 远程推送全链路拆解:从 deviceToken 到多账号绑定
ios·app
茶底世界之下3 天前
仙人掌与沙丘的傍晚:用 Awaking 让侧光有了层次
ios·app·产品
茶底世界之下4 天前
蓝调鱼市的一盏暖灯:用 Awaking 把冷海与灯光分开
ios·app·产品
茶底世界之下5 天前
窗边白雏菊与旧书:用 Awaking 留住一束暖光
ios·app·产品