我正尝试在 C# 代码中导入 Python 模块,如下所示:
var setup = Python.CreateRuntimeSetup(null);
var runtime = new ScriptRuntime(setup);
var engine = Python.GetEngine(runtime);
var module = engine.ImportModule("mymodule");
但我收到一条错误消息“No module named signal”,这是否意味着 IronPython 无法加载信号模块,是否特定于操作系统?
谁能想到解决方法?
最佳答案
“信号”模块用于处理与...有关的所有事情,您猜对了:信号。操作系统会向进程发送一些特殊的“消息”来告诉它一些事情:例如。 Break、Kill、Terminate 等...确切的消息集通常是操作系统特定的,但作为 signals python 手册页状态,python 模拟 BSD 风格的界面,除了 SIGCHLD。
现在,在 CPython 中,“信号”模块是我内存中的内置模块,可能是 IronPython 尚未实现它,事实上,快速谷歌并查看 IronPython 的网站会导致这个: IronPython and CPython differences (请特别阅读扩展模块部分!)
可能的解决方法:编辑您的模块,使其在 IronPython 中不使用信号
关于.net - 将 python 模块导入 .net - "No module named signal",我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/847109/