c# - 是否可以将对象或值从 Python 脚本返回到托管应用程序?

标签 c# python ironpython

例如,在 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/

相关文章:

c# - 使用 linq 在 foreach 中删除所有内容

ironpython - Spotfire IronPython 脚本 : get Cross Table data

python - 网络共享列表

c# - 如何用引号引起来的整数C#?

c# - 如何通过继承访问对象

c# - 在 c# 项目中使用 XSD 构建任务

python - 我可以在matplotlib中显示没有科学计数法的图片像素值吗

python - 在 vi 编辑器中运行 python 代码并传递用户输入

android - 为 TensorFlow 导出的 .pb 文件添加权重

javascript - 如何动态调整 Spotfire 文本区域的大小