gpt4 book ai didi

c# - IronPython - 从 C# 4.0 应用程序中的字符串加载脚本

转载 作者:行者123 更新时间:2023-11-30 19:21:52 25 4
gpt4 key购买 nike

我有以下代码(只是一个测试):

var engine = Python.CreateEngine();
var runtime = engine.Runtime;

try
{
dynamic test = runtime.UseFile(@"d:\test.py");

test.SetVariable("y", 4);
test.SetVariable("client", UISession.ControllerClient);
test.Simple();
}
catch (Exception ex)
{
var eo = engine.GetService<ExceptionOperations>();
Console.WriteLine(eo.FormatException(ex));
}

但我想改为从字符串加载脚本。

最佳答案

您可以使用 engine.CreateScriptSourceFromString 将脚本从字符串而不是文件加载到作用域中。

     StringBuilder sb = new StringBuilder();
sb.Append("def helloworld():\r\n");
sb.Append(" print \"hello world\"\r\n");
string code = sb.ToString();
ScriptEngine engine = Python.CreateEngine();
ScriptSource source = engine.CreateScriptSourceFromString(code, SourceCodeKind.File);
ScriptScope scope = engine.CreateScope();
source.Execute(scope);
Func<object> func = scope.GetVariable<Func<object>>("helloworld");
Console.WriteLine(func());

关于c# - IronPython - 从 C# 4.0 应用程序中的字符串加载脚本,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/2154320/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com