【发布时间】:2009-09-19 21:47:03
【问题描述】:
我有一个使用 PyObjC 完全用 Python 编写的插件,我需要将其核心类转换为 Objective-C。其中一个基本上只是加载一个 Python 模块并执行一个特定的函数,并传递给它关键字参数。在 PyObjC 中,这是非常极端的。
但是,我很难弄清楚如何使用 Python C API 来做同样的事情。特别是,我不确定如何最好地将 NSDictionary(可能包含整数、字符串、布尔值或以上所有内容)转换为一种格式,然后我可以将其作为关键字参数传递给 Python。
有人对如何完成这样的事情有指导吗?提前致谢!
编辑:澄清一下,我正在将我现有的类(以前是 Python)转换为 Objective-C,并且无法弄清楚如何从 Objective-C 中的 NSDictionary 迁移到当我调用剩余的 Python 脚本时,我可以传递 Python 字典。 Objective-C 类基本上只是一个 Python 加载器,但我不熟悉 Python C API,并且无法确定在哪里可以找到对我有帮助的示例或函数。
【问题讨论】:
-
我有点惊讶你不能只通过 PyObjC 将 NSDictionary 传递给 Python,然后像普通的 Python 字典一样对待它。有什么具体的东西不起作用吗?
-
可能只是我对如何做到这一点的了解;愿意分享一个代码示例,说明如何使用 PyObjC 从 Objective-C 类中调用 Python 函数并将其传递给 NSDictionary? PyObjC 的 C API 文档也很棒;看了但什么也找不到。
-
其实不需要代码;我没有注意到迈克尔在下面第二次回答了我!哎呀。 :-)
标签: python objective-c pyobjc