gpt4 book ai didi

c# - 从 iron python 脚本(从 c# 脚本引擎调用)调用 python 脚本的问题

转载 作者:太空宇宙 更新时间:2023-11-03 10:45:34 28 4
gpt4 key购买 nike

我正在使用 c# 调用 iron python 脚本

        ScriptRuntimeSetup setup = Python.CreateRuntimeSetup(null);
ScriptRuntime runtime = new ScriptRuntime(setup);
ScriptEngine engine = Python.GetEngine(runtime);

ScriptSource source = engine.CreateScriptSourceFromFile("C:/KitGenerator/KitGenerator/LoadKitsFromDatabase.py");
ScriptScope scope = engine.CreateScope();
source.Execute(scope);

这工作正常并且使用打印输出我已经证明代码运行正确。然而在 iron python 脚本中是对另一个 python 脚本的调用

os.system("ipython C:\KitGenerator\Kit-Generator\GenerateKitImages.py")

(我已经尝试过(ipython“GenerateKitImages.py”)

问题:当我使用 Ipy.exe 运行第一个 iron python 脚本时,两者都运行得很好并且按预期进行。但是,当我使用 c# 脚本引擎运行第一个 iron python 脚本时,它只运行第一个脚本,而第二个脚本从未被调用。

我对这个迷路了。我可以确认它与以下内容无关:权限、依赖项。

为解决此问题的人颁发金牌和披萨。

最佳答案

首先,os.system 调用应该使用原始 (r"") 字符串:

os.system(r"ipython C:\KitGenerator\Kit-Generator\GenerateKitImages.py")

否则反斜杠会导致问题。

但是,既然你说它可以从 ipy.exe 运行,我猜 ipython 在你的 PATH 上在第一种情况下而不是第二种情况下。您可以设置 PATH environment variable from C# , 在 os.system 调用中包含到 ipython 的完整路径,或者确保在调用 C# 程序之前设置 PATH,通过 changing it globally .

关于c# - 从 iron python 脚本(从 c# 脚本引擎调用)调用 python 脚本的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23540828/

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