我使用SWIG包装了一些C代码,将其用作python库。
在这个框架中,我编写的一些python代码调用一个C函数,它返回一个字符串。但是,为了创建字符串,C函数需要一个排名,我在Python中实现了它的生成。我将如何使用回调实现此功能?
我将此视为以下多步骤过程。
1)Python实例化一个C对象: import test_Objects #test_Objects是已包装的C文件 C = test_objects.my_class()
2)在my_class对象上调用相关方法,该方法返回一个字符串: txt_1 =“string1” txt_2 - “string2” result = C.sorted_string(txt_1,txt_2)
2.1)我希望sorted_string调用以下python函数,该函数返回一个已排序的列表。
def sorted_string([my_list]):
.....
.....
return your_list
2.2)Sorted_string将利用列表生成结果。
我如何实施步骤2.1?
答案 0 :(得分:0)
PyObject_Call*()
函数可用于从C调用Python函数或方法。
答案 1 :(得分:0)
这不是特定于您的问题,但这是我问的一个示例:swig-passing-argument-to-python-callback-function
希望这有用。