you reconoce paquetes mac instalar however descargar available are actualizar python pip

python - paquetes - windows 10 no reconoce pip



Error después de actualizar pip: no se puede importar el nombre ''main'' (25)

Para la familia Ubuntu, Debian, usuarios de Linux Mint

Gracias a la explicación above Anthony, puede conservar su pip original del sistema (en / usr / bin / y dist-packages /) y eliminar el pip instalado manualmente (en ~ / .local /) para resolver el conflicto:

$ python3 -m pip uninstall pip

Ubuntu / Debian pip v8.1.1 (16.04) del paquete debian python3-pip (ver $ pip3 -V ) muestra los mismos resultados de búsqueda que el último pip v10.0.1, e instala los últimos módulos de PyPI muy bien. Tiene un comando pip funciona (ya está en $ PATH), además de la agradable opción de --user parcheada por defecto desde 2016. Mirando las notas de lanzamiento de pip , las versiones más nuevas tratan principalmente de correcciones de errores específicas de casos de uso y ciertas novedades características, por lo que no todos tienen que apresurarse a actualizar pip por el momento. Y, de todos modos, el nuevo pip 10 se puede implementar en Python virtualenvs.

Pero independientemente de los pips, su sistema operativo permite instalar rápidamente módulos comunes de Python (incluido numpy) con APT, sin la necesidad de pip, por ejemplo:
$ sudo apt install python3-numpy python3-scipy (con dependencias del sistema)
$ sudo apt install python3-pip ( $ sudo apt install python3-pip parcheado en Debian, un poco más antiguo pero no importa)

Recordatorio rápido de sintaxis de apt (consulte man apt para más detalles):
$ sudo apt update (para resincronizar archivos de índice de paquetes de Ubuntu de fuentes actualizadas)
$ apt search <python-package-name> (búsqueda de texto completo en todos los paquetes disponibles)
$ apt show <python-package-name> (muestra la descripción detallada del paquete)
$ sudo apt install <python-package-name>

Los nombres de los paquetes con el prefijo python- son para Python 2; y con el prefijo python3- son para Python 3 (por ejemplo, python3-pandas). Hay miles, y se someten a pruebas de integración dentro de Debian y Ubuntu. A menos que busque instalar a nivel de usuario ( pip install --user opción de pip install --user ) o dentro de virtualenv / venv, apt podría ser lo que necesita. También se puede acceder a estos paquetes del sistema desde entornos virtuales, ya que virtualenv recurrirá con gracia al uso de las bibliotecas del sistema en la importación si sus entornos no han proporcionado copias de los módulos. Sus módulos personalizados por usuario (con pip --user ) por usuario en ~/.local/lib también los anularán.

Tenga en cuenta que, dado que se trata de una instalación en system-wide , rara vez necesitará eliminarlos (debe tener en cuenta las dependencias del sistema operativo). Esto es conveniente para paquetes con muchas dependencias del sistema (como scipy o matplotlib), ya que APT realizará un seguimiento y proporcionará todas las bibliotecas del sistema y extensiones C requeridas, mientras que con pip no tiene tales garantías .

De hecho, para los paquetes de Python en todo el sistema (en contraste con el nivel de directorio de inicio o inferior por usuario), Ubuntu expects usar el administrador de paquetes APT (en lugar de sudo pip ) para evitar romper el sistema operativo: sudo pip3 apunta a lo mismo /usr/lib/python3/dist-packages directorio /usr/lib/python3/dist-packages donde APT almacena módulos sensibles al sistema operativo. Las versiones recientes de Debian / Ubuntu dependen en gran medida de Python 3, por lo que sus módulos preinstalados son administrados por apt y no deben cambiarse.

Entonces, si usa el pip3 install , asegúrese de que se ejecute en un entorno de desarrollo virtual aislado, como virtualenv ( sudo apt install python3-virtualenv ), o con Python3 incorporado ( -m venv ), o en un nivel de usuario ( --user opción de usuario pip, predeterminado en pip proporcionado por Ubuntu desde 2016), pero no en todo el sistema (¡nunca sudo pip3 !), porque pip expects con el funcionamiento del administrador de paquetes APT y puede afectar los components sistema operativo Ubuntu cuando El módulo Python utilizado por el sistema se cambia inesperadamente. ¡Buena suerte!

P. S. Todo lo anterior es para la solución ''ideal'' (estilo Debian / Ubuntu).

Si aún desea utilizar el nuevo pip3 v10 exclusivamente, hay 3 soluciones rápidas:

  • simplemente abra una nueva sesión de bash (una nueva pestaña de terminal o escriba bash ), y pip3 v10 estará disponible (consulte pip3 -V ). el pip3 v8 de debian permanece instalado pero está roto; o
  • el comando $ hash -d pip3 && pip3 -V para actualizar el nombre de ruta pip3 en $ PATH. el pip3 v8 de debian permanece instalado pero está roto; o
  • el comando $ sudo apt remove python3-pip && hash -d pip3 para desinstalar completamente el pip3 v8 de debian, a favor de su nuevo pip3 v10.

Nota: ¡Siempre necesitará agregar el indicador de --user a cualquier pip no proporcionado por Debian, a menos que esté en un virtualenv! (implementa paquetes de python en ~/.local/ , por defecto en debian / ubuntu proporcionado por python3-pip y python-pip desde 2016). Ubuntu / Debian no admite realmente el uso de pip 10 en todo el sistema, fuera de virtualenv. Nunca sudo pip3 !

Más detalles:
https://github.com/pypa/pip/issues/5221#issuecomment-382069604
https://github.com/pypa/pip/issues/5240#issuecomment-381673100

Cada vez que intento instalar cualquier paquete usando pip, recibo este error de importación:

guru@guru-notebook:~$ pip3 install numpy Traceback (most recent call last): File "/usr/bin/pip3", line 9, in <module> from pip import main ImportError: cannot import name ''main''


guru@guru-notebook:~$ cat `which pip3` #!/usr/bin/python3 # GENERATED BY DEBIAN import sys # Run the main entry point, similarly to how setuptools does it, but because # we didn''t install the actual entry point from setup.py, don''t use the # pkg_resources API. from pip import main if __name__ == ''__main__'': sys.exit(main())

Funcionaba bien antes, no estoy seguro de por qué está arrojando este error. He buscado este error, pero no puedo encontrar nada para solucionarlo.

Avíseme si necesita más detalles, actualizaré mi pregunta.


importar principal desde pip._internal

hash -d pip

Edite el código pip de

from pip._internal import main


¡becarios! Tengo el mismo problema y lo resolví. Aquí está mi solución. Primero, cuando ejecuto pip install algo, el error salió así:

sudo nano /usr/bin/pip3

Entonces, cd en el archivo / usr / bin / y cat pip3 para ver el código en él. Veo esto en esto:

Traceback (most recent call last): File "/usr/bin/pip3", line 9, in <module> from pip import main ImportError: cannot import name ''main''

Y luego creo que no estaba en la ruta de instalación. Así que cd en el python3-pip, así:

#!/usr/bin/python3 # GENERATED BY DEBIAN import sys # Run the main entry point, similarly to how setuptools does it, but because # we didn''t install the actual entry point from setup.py, don''t use the # pkg_resources API. from pip import main if __name__ == ''__main__'': sys.exit(main())

ps: tienes que cd en las direcciones correctas en tu computadora. Luego busco el archivo para ver las diferencias (puedes usar otras operaciones para ver el código):

cd /.local/lib/python3.5/site-packages/pip

Y vi esto:

cat __main__.py

Entonces, ¿puedes ver la diferencia? Puedo darme cuenta de que tengo que hacer que el archivo sea el mismo que el archivo en / usr / bin / pip3

Entonces, copié el código en /.local/lib/python3.5/site-packages/pip para reemplazar el código en / usr / bin / pip3 y el problema desapareció.

ps: pip3 o pip no tienen diferencia en este problema. ¡Seré feliz si mi solución resuelve su problema!


Como dijo @cryptoboy: compruebe qué versión de pip / python ha instalado

from __future__ import absolute_import import os import sys # If we are running from a wheel, add the wheel to sys.path # This allows the usage python pip-*.whl/pip install pip-*.whl if __package__ == '''': # __file__ is pip-*.whl/pip/__main__.py # first dirname call strips of ''/__main__.py'', second strips off ''/pip'' # Resulting path is the name of the wheel itself # Add that to sys.path so we can import pip path = os.path.dirname(os.path.dirname(__file__)) sys.path.insert(0, path) from pip._internal import main as _main # isort:skip # noqa if __name__ == ''__main__'': sys.exit(_main())

y luego busque bibliotecas no necesarias en su carpeta .local / lib /.

Hice una copia de seguridad de la configuración cuando estaba migrando a Kubuntu más reciente y tenía la carpeta .local / lib / python2.7 / en mi directorio de inicio. Python instalado 3.6. Acabo de eliminar la carpeta anterior y ahora todo funciona muy bien.


Debes haber actualizado inadvertidamente tu pip del sistema (probablemente a través de algo como sudo pip install pip --upgrade )

pip 10.x ajusta dónde están situadas sus partes internas. El comando pip3 que está viendo es uno proporcionado por el mantenedor de su paquete (¿presumiblemente basado en Debian aquí?) Y no es un archivo administrado por pip.

Puede leer más sobre esto en el rastreador de problemas de pip

Probablemente no querrá actualizar su pip del sistema y en su lugar usar un virtualenv.

Para recuperar el binario pip3 necesitará sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall .

Si desea continuar en un "territorio no admitido" (actualizar un paquete del sistema fuera del administrador de paquetes del sistema), probablemente pueda salirse con python3 -m pip ... lugar de pip3 .


En Debian necesitará actualizar apt primero ...

demon@UbuntuHP:~$ pip -V demon@UbuntuHP:~$ pip2 -V demon@UbuntuHP:~$ pip3 -V

Si omite ''sudo apt-get update -qq'', su pip se dañará y mostrará el error ''no se puede encontrar el principal''.


En ubuntu 18.04.1 Bionic Beaver, debe cerrar sesión y volver a iniciarla (no es necesario reiniciar) para obtener el entorno adecuado.

$ sudo apt install python-pip $ pip --version pip 9.0.1 from /usr/lib/python2.7/dist-packages (python 2.7) $ pip install --upgrade pip $ pip --version Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> from pip import main ImportError: cannot import name main $ exit <login> $ pip --version pip 18.1 from /home/test/.local/lib/python2.7/site-packages/pip (python 2.7)


Encontré el mismo problema en mi sistema Ubuntu 16.04. Logré arreglarlo reinstalando pip con el siguiente comando:

curl https://bootstrap.pypa.io/get-pip.py | sudo python3


Este error puede ser de permiso. Entonces, pruebe ejecutar el comando con la bandera -H :

sudo apt-get update -qq sudo apt-get install python-pip -qq sudo pip install pip --upgrade --quiet sudo pip2 install virtualenv --quiet


Estoy corriendo en un sistema donde tengo sudo apt pero no sudo pip. (Y sin acceso). Me metí en esta misma situación siguiendo los consejos de pip:

Está utilizando pip versión 8.1.1, sin embargo, 18.0 está disponible. Debería considerar la actualización mediante el comando ''pip install --upgrade pip''.

Ninguna de las otras soluciones funcionó para mí, porque no tengo suficientes privilegios de administrador. Sin embargo, algunas cosas me quedaron de leer sobre esto:

  • No debería haber hecho esto. Claro, pip me dijo que lo hiciera. Mentía
  • El uso de --user resuelve muchos problemas al centrarse en el directorio exclusivo para usuarios.

Entonces, encontré que esta línea de comando funciona para revertirme a donde estaba. Si estaba utilizando una versión diferente a la 8.1.1, obviamente querrá cambiar esa parte de la línea.

python -m pip install --force-reinstall pip==8.1.1 --user

Eso es lo único que funcionó para mí, ¡pero funcionó perfectamente!


Lo mismo me sucedió en Pixelbook usando el nuevo LXC (strech). Esta solución es muy similar a la aceptada, con una sutil diferencia, que pip3 fijo para mí.

sudo python3 -m pip install --upgrade pip

Eso golpeó la versión, y ahora funciona como se esperaba.

Lo encontré aquí ... Python.org: asegúrese de que pip esté actualizado


Lo que funcionó para mí para solucionar el error al usar pip3 fue:

sudo cp -v /usr/local/bin/pip3 /usr/bin/pip3

Todo funciona:

demon@UbuntuHP:~$ pip -V pip 10.0.1 from /usr/local/lib/python3.5/dist-packages/pip (python 3.5) demon@UbuntuHP:~$ pip2 -V pip 10.0.1 from /home/demon/.local/lib/python2.7/site-packages/pip (python 2.7) demon@UbuntuHP:~$ pip3 -V pip 10.0.1 from /usr/local/lib/python3.5/dist-packages/pip (python 3.5)

¿Quizás la nueva versión 10.0.1 de pip no actualiza el binario en / usr / bin?


Los comandos anteriores no funcionaron para mí, pero fueron muy útiles:

sudo apt purge python3-pip sudo rm -rf ''/usr/lib/python3/dist-packages/pip'' sudo apt install python3-pip cd cd .local/lib/python3/site-packages sudo rm -rf pip* cd cd .local/lib/python3.5/site-packages sudo rm -rf pip* sudo pip3 install jupyter


Para la versión 2.7 de Python, la solución @Anthony funciona perfectamente, cambiando python3 a python de la siguiente manera:

sudo python -m pip uninstall pip && sudo apt install python-pip --reinstall


Por lo que vale, tuve el problema con pip (no pip2 o pip3 ):

$ pip -V Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> from pip import main ImportError: cannot import name main $ pip2 -V pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7) $ pip3 -V pip 8.1.1 from /usr/lib/python3/dist-packages (python 3.5)

De alguna manera (no recuerdo cómo) tenía cosas de Python instaladas en mi directorio ~/.local . Después de eliminar el directorio pip de allí, pip comenzó a funcionar nuevamente.

$ rm -rf /home/precor/.local/lib/python2.7/site-packages/pip $ pip -V pip 8.1.1 from /usr/lib/python2.7/dist-packages (python 2.7)


Puede resolver este problema reinstalando pip.

Use uno de los siguientes comandos de línea de comandos para reinstalar pip:

Python2:

python -m pip uninstall pip && sudo apt install python-pip --reinstall

Python3:

python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall


Recuperar con python3 -m pip install --user pip==9.0.1 (o la versión que funcionó)


Truco y funciona también

sudo -H pip install lxml


Tuve el mismo error, pero python -m pip todavía funcionaba, así que lo arreglé con la opción nuclear sudo python -m pip install --upgrade pip . Lo hizo por mi.


Use el siguiente comando antes de ejecutar cualquier comando pip

sudo -H pip3 install numpy

Funcionará



Yo uso sudo apt remove python3-pip luego pip funciona.

~ sudo pip install pip --upgrade [sudo] password for sen: Traceback (most recent call last): File "/usr/bin/pip", line 9, in <module> from pip import main ImportError: cannot import name ''main'' ➜ ~ sudo apt remove python3-pip Reading package lists... Done Building dependency tree Reading state information... Done The following packages were automatically installed and are no longer required: libexpat1-dev libpython3-dev libpython3.5-dev python-pip-whl python3-dev python3-wheel python3.5-dev Use ''sudo apt autoremove'' to remove them. The following packages will be REMOVED: python3-pip 0 upgraded, 0 newly installed, 1 to remove and 0 not upgraded. After this operation, 569 kB disk space will be freed. Do you want to continue? [Y/n] y (Reading database ... 215769 files and directories currently installed.) Removing python3-pip (8.1.1-2ubuntu0.4) ... Processing triggers for man-db (2.7.5-1) ... ➜ ~ pip Usage: pip <command> [options]


El error puede resolverse modificando el archivo pip

Verifique la ubicación del archivo:

$ which pip

ruta -> / usr / bin / pip

Vaya a esa ubicación /usr/bin/pip y abra una terminal.

Ingrese: $ sudo nano pip

Puedes ver:

from pip import main if __name__ == ''__main__'': sys.exit(main())

Cambiar a:

import sys from pip import __main__ if __name__ == ''__main__'': sys.exit(__main__._main())

luego Ctrl + O escribe los cambios y sale.

Espero que esto haga !!


Utilice python -m pip install lugar de pip install

Ejemplo:

python -m pip install --user somepackage python3 -m pip install --user somepackage

El ejecutable pip (resp. pip3 ) lo proporciona su distribución (paquete python-pip en Ubuntu 16.04) y se encuentra en /usr/bin/pip .

Por lo tanto, no se mantiene actualizado con el paquete pip sí mismo a medida que actualiza pip, y puede romperse.

Si solo usa python -m pip directamente, por ejemplo, como en:

python -m pip install --user somepackage python3 -m pip install --user somepackage

recorre su ruta de Python y encuentra la última versión de pip, y ejecuta ese archivo.

Se basa en el hecho de que ese archivo es ejecutable a través de la import , pero ese es un tipo de interfaz muy estándar y, por lo tanto, es menos probable que se rompa que el script de Debian más pirateado.

Luego recomiendo agregar los siguientes alias a su .bashrc :

pip() ( python -m pip "$@" ) pip3() ( python3 -m pip "$@" )

Probado en Ubuntu 16.04 después de una actualización de pip3 9.0.1 a 18.0.


resuelto en un solo paso.

Yo también enfrenté este problema, pero esto se puede resolver simplemente con 1 comando sin molestar y perder el tiempo y lo he probado en múltiples sistemas, es la solución más limpia para este problema. Y eso es:

Para python3: - sudo python3 -m pip uninstall pip && sudo apt install python3-pip --reinstall .

Con esto, simplemente puede instalar paquetes usando pip3 . para verificar usar pip3 --version .

Para versiones anteriores, use: sudo python -m pip uninstall pip && sudo apt install python-pip --reinstall .

Con esto, ahora puede simplemente instalar paquetes usando pip . para verificar usar pip --version .