到目前为止,我有一个简单的类,它包装了一个 python 引擎(IronPython)供我使用。虽然代码看起来很大,但它真的很简单,所以我在这里复制它以便更清楚地解决我的问题。
这是代码:
public class PythonInstance
{
ScriptEngine engine;
ScriptScope scope;
ScriptSource source;
public PythonInstance()
{
engine = Python.CreateEngine();
scope = engine.CreateScope();
}
public void LoadCode(string code)
{
source = engine.CreateScriptSourceFromString(code, Microsoft.Scripting.SourceCodeKind.Statements);
source.Compile();
}
public void SetVariable(string key, dynamic variable)
{
scope.SetVariable(key, variable);
}
public void RunCode()
{
source.Execute(scope);
}
public void CallFunction(string function)
{
//?????? no idea what to call here
}
}
所以,它工作得很好,但它只允许我一次执行所有 python 脚本......但我想做的是能够从 pythos 脚本中调用特定函数。
所以,我的问题是:如何在加载的脚本中调用特定的函数?
我试图找到一些信息或教程,但不幸的是找不到任何东西。