例如,在 Lua 中,您可以将以下行放在脚本的末尾:
return <some-value/object>
然后托管应用程序可以检索返回的值/对象。
我使用这种模式,以便脚本可以代表事件处理程序的工厂。然后使用基于脚本的事件处理程序来扩展应用程序。例如,托管应用程序运行名为“SomeEventHandler.lua”的脚本,该脚本定义并返回一个对象,该对象是应用程序中“SomeEvent”的事件处理程序。
这可以用 Python 完成吗?还是有更好的方法来实现这一目标?
更具体地说,我将 IronPython 嵌入到我的 C# 应用程序中,并且正在寻找一种方法来实例化这些基于脚本的事件处理程序,这将允许使用 Python 扩展应用程序。
最佳答案
嵌入 Python 时,这是完全可能的,也是一种常用技术。 This article显示基础知识,this page 也是如此.核心函数是 PyObject_CallObject()
,它从 C 调用用 Python 编写的代码。
关于c# - 是否可以将对象或值从 Python 脚本返回到托管应用程序?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1086188/