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)
    }
}
相关推荐
SY.ZHOU36 分钟前
移动端架构体系(四):View层的组织与调用方案
flutter·ios·架构·系统架构·安卓
inxx4 小时前
iOS 26 模拟器启动卡死:Method Swizzling 在系统回调时触发 nil 崩溃
ios
Swift社区4 小时前
鸿蒙 vs iOS / Android:谁更适合 AI?
android·ios·harmonyos
亘元有量-流量变现5 小时前
ASO优化全流程实操指南:从基础到迭代,精准提升App曝光与转化
android·ios·harmonyos·aso优化·方糖试玩
zhangjikuan895 小时前
iOS屏幕适配方案
ios
tangweiguo0305198721 小时前
SwiftUI布局完全指南:从入门到精通
ios·swift
T1an-11 天前
最右IOS岗一面
ios
坏小虎1 天前
Expo 快速创建 Android/iOS 应用开发指南
android·ios·rn·expo
光影少年1 天前
Android和iOS原生开发的基础知识对RN开发的重要性,RN打包发布时原生端需要做哪些配置?
android·前端·react native·react.js·ios
北京自在科技1 天前
Find My 修复定位 BUG,AirTag 安全再升级
ios·findmy·airtag