我正在使用Microsoft.Scripting.Hosting.ScriptEngine
并通过IronPython.Hosting.Python.CreateEngine()
对其进行实例化。然后我创建一个Scope并执行一些python代码。
我现在想在C#中收集所有本地分配的变量名及其值。如何通过查询Python ScriptEngine和Scope来提取在Python脚本中声明和分配的所有变量名称和值,但是从C#中提取?
由于
答案 0 :(得分:1)
您可以通过动态对象和反射来完成此操作。 这只是有翼的代码,但如果您发送给我或主持解决方案,我可以为您解决。
dynamic someOject = IronPython.Hosting.Python.CreateEngine();
foreach (var property in someOject.GetType().GetProperties())
Console.WriteLine($"Property Name: {property.Name} - Property Value: {property.GetValue(someOject)}");
不确定这是否是您要找的......如果不是,请告诉我,以便我们进一步为您提供帮助。