Estoy tratando de incrustar Python 2.6 en .NET 4.0.Python para .NET: ImportError: no hay ningún módulo llamado advertencias
Siguiendo la documentación muy mínima en "Python para .NET", me escribió un código bastante sencillo de la siguiente manera:
const string pythonModulePath = @"C:\Projects\PythonImport\PythonImport\test.py";
Environment.SetEnvironmentVariable("PYTHONHOME", Path.GetDirectoryName(python
ModulePath));
PythonEngine.Initialize();
var oldWorkingDirectory = Directory.GetCurrentDirectory();
var currWorkingDirectory = Path.GetDirectoryName(pythonModulePath);
Directory.SetCurrentDirectory(currWorkingDirectory);
var pyPlugin = PythonEngine.ImportModule(Path.GetFileNameWithoutExtension(python
ModulePath));
if (pyPlugin == null)
{
throw new PythonException();
}
Directory.SetCurrentDirectory(oldWorkingDirectory);
Incluso si test.py está vacía me sale un error de importación diciendo "No hay ningún módulo llamado advertencias ".
'import site' failed; use -v for traceback
Unhandled Exception: Python.Runtime.PythonException: ImportError : No module nam
ed warnings
El motivo se hace evidente cuando ejecuta test.py utilizando "python -v" (modo detallado). Observe que python llama a las advertencias #cleanup [2].
¿Por qué Python .NET no puede resolver las advertencias? El módulo está presente en el directorio Lib.
¿Alguna idea?