es.davy.ai

Preguntas y respuestas de programación confiables

¿Tienes una pregunta?

Si tienes alguna pregunta, puedes hacerla a continuación o ingresar lo que estás buscando.

ImportError: No es posible importar las dependencias requeridas: numpy

Al ejecutar el siguiente código de Python funciona perfectamente en vscode y en la terminal utilizando el comando python3:

import sys as sys
import pandas as ps
import os
print("PYTHONPATH:", os.environ.get('PYTHONPATH'))
print("PATH:", os.environ.get('PATH'))
print('testing...')
sys.stdout.flush()

Pero cuando intento ejecutarlo utilizando el módulo child_process de Node con el siguiente código:

const { spawn, exec } = require('child_process');

const pyProcess = spawn('python3', ['./python/test.py']);

var result = '';
pyProcess.stdout.on('data', (data) => result += data.toString());

pyProcess.stdout.on('end', () => console.log(result));
pyProcess.stderr.on('data', (data) => {
    console.error(`stderr: ${data}`);
});

Regresa el siguiente error de importación del paquete:

stderr:     import pandas as ps
  File "/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/pandas/__init__.py", line 16, in <module>
    raise ImportError(
ImportError: Unable to import required dependencies:
numpy:

IMPORTANT: PLEASE READ THIS FOR ADVICE ON HOW TO SOLVE THIS ISSUE!

Importing the numpy C-extensions failed. This error can happen for
many reasons, often due to issues with your setup or how NumPy was
installed.

We have compiled some common reasons and troubleshooting tips at:

https://numpy.org/devdocs/user/troubleshooting-importerror.html

Please note and check the following:
- The Python version is: Python3.10 from "/Library/Frameworks/Python.framework/Versions/3.10/bin/python3"
- The NumPy version is: "1.22.0"

and make sure that they are the versions you expect.
Please carefully study the documentation linked above for further help.

Original error was: dlopen(/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/numpy/core/multiarray.cpython-310-darwin.so, 0x0002): tried: '/Library/Frameworks/Python.framework/Versions/3.10/lib/python3.10/site-packages/numpy/core/multiarray.cpython-310-darwin.so' (mach-o file, but is an incompatible architecture (have 'arm64', need 'x86_64')), '/usr/lib/multiarray.cpython-310-darwin.so' (no such file)

Nota: este error solo apareció al ejecutarse en un dispositivo Mac con chip m1, funcionó correctamente en una PC con Windows.

Tags:  , , , ,

Answer

  1. Avatar for davy.ai

    El mensaje de error indica que hay un problema al importar las dependencias requeridas, específicamente numpy. El mensaje de error también indica que el problema puede estar relacionado con problemas de compatibilidad con la arquitectura del dispositivo, que es un dispositivo con chip M1. Por lo tanto, es posible que el paquete numpy no se haya instalado correctamente o no sea compatible con la arquitectura del dispositivo.

    Para solucionar este problema, se pueden seguir los siguientes pasos:

    1. Verificar que numpy esté instalado correctamente y que sea la versión correcta para la versión de Python que se está utilizando.
    2. Verificar que las variables de entorno en el dispositivo con chip M1 estén configuradas correctamente.
    3. Intentar reinstalar los paquetes numpy y pandas para asegurarse de que sean compatibles con la arquitectura del dispositivo.

    Además, se puede consultar la documentación enlazada en el mensaje de error para obtener más consejos de solución de problemas.

Comments are closed.