https://github.com/pythonnet/pythonnet/issues/1348
https://github.com/pythonnet/pythonnet/issues/1273
只需要设置环境变量就可以了
var pythonDllFilePath = "C:\Users\spike\AppData\Local\Programs\Python\Python39\python39.dll";
var pythonTask = Task.Run(() =>
{
Environment.SetEnvironmentVariable("PYTHONNET_PYDLL", pythonDllFilePath);
using (Py.GIL())
{
// create a Python scope
using (var scope = Py.CreateScope())
{
scope.Exec(Script.Expression);
}
}
});
TimeSpan ts = TimeSpan.FromMinutes(5);
if (!pythonTask.Wait(ts))
code = "The task timeout .";