我有一个问题,我有这样的代码
this._engine = Python.CreateEngine();
ScriptSource source = this._engine.CreateScriptSourceFromString(script.SourceCode);
ScriptScope scope = this._engine.CreateScope();
ObjectOperations operations = this._engine.Operations;
source.Execute(scope);
我正在尝试从教程中执行IronPython代码:
from System.Collections import BitArray
ba = BitArray(5)
ba.Set(0, True) # call the Set method
print ba[0]
所以它正确执行,但我无法理解我是否有print ba[0]
为什么它不会将此值输出到控制台?顺便问一下,您能否提供一些关于将IronPython用于应用程序脚本的好文章?
另一个问题是,如果我有一些Python类,我不知道这个类的名称,因为客户端可以手动定义它,是否可以创建此类的实例?例如
class SomeClass(object):
def some(self, a, b):
return <something>
现在我正在尝试使用此代码
dynamic SomeClass = scope.GetVariable("SomeClass");
dynamic something = SomeClass();
something.some(x,y);
我应该遍历ScriptScope.GetItems()
集合并搜索PythonType
个对象吗?