J'ai un Ubuntu fraîchement installé sur un ordinateur fraîchement construit. Je viens d'installer python-pip avec apt-get. Maintenant, lorsque j'essaye de pog installer Numpy et Pandas, cela donne l'erreur suivante.
J'ai vu cette erreur mentionnée à plusieurs endroits sur SO et Google, mais je n'ai pas trouvé de solution. Certaines personnes mentionnent que c'est un bug, certaines discussions sont tout simplement mortes ... Qu'est-ce qui se passe?
Traceback (most recent call last):
File "/usr/bin/pip", line 9, in <module>
load_entry_point('pip==1.5.4', 'console_scripts', 'pip')()
File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 185, in main
return command.main(cmd_args)
File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 161, in main
text = '\n'.join(complete_log)
UnicodeDecodeError: 'ascii' codec can't decode byte 0xe2 in position 72: ordinal not in range(128)
J'ai eu ce problème exact récemment et utilisé
apt-get install python-numpy
Ceci ajoute numpy à votre interpréteur python système. J'ai peut-être dû faire la même chose pour matplotlib. Pour utiliser virtualenv, vous devez créer votre environnement en utilisant le
--system-site-packages
option
Pour moi, le commentaire de @Charles Duffy l'a résolu . Mettez ceci dans votre env:
LC_ALL=C
Vous pouvez l'ajouter à votre .bashrc avec une ligne comme celle-ci:
export LC_ALL=C
Mais assurez-vous que vous affecterez tous les autres programmes. Donc, vous voudrez peut-être l'utiliser uniquement pour l'exécution du pip:
$ LC_ALL=C pip install ...
Essayez de mettre à jour le pip:
pip install -U pip
J'ai eu ce problème avec le paquet matplotlib ..__, j'ai dû exécuter:
export LC_ALL=C
pip install --upgrade setuptools
Pour moi, cela a été résolu en ignorant un cache (vraisemblablement) corrompu avec
pip install --no-cache-dir ...
comme décrit ici: https://github.com/pypa/pip/issues/2674
J'ai eu une erreur similaire lors de l'exécution de pip install pandas
et cela était dû à un manque de mémoire. J'ai augmenté la mémoire de ma machine virtuelle à 4G et cela a corrigé les choses.
Une combinaison de
Sudo apt-get install python-dev
et
export LC_ALL=C
pip install --upgrade setuptools
résolu mon problème.
Récemment, je suis tombé sur le même problème Cela le résout pour moi:
echo 'export LANG=en_US.UTF-8' >> ~/.bashrc
echo 'export LANGUAGE=en_US:en' >> ~/.bashrc
echo 'export LC_ALL=en_US.UTF-8' >> ~/.bashrc
Sudo apt-get install language-pack-en
Remarque,
J'avais déjà installé python-numpy et python-dev. Même ceci peut causer un problème sur votre système . Vous pouvez également exporter LC_ALL = C au lieu de en_US.UTF-8 (ou de toute autre langue)
Dans le répertoire 'site-packages', faites 'sitecustomize.py' comme ceci
import sys
sys.setdefaultencoding("utf-8")
Maintenant vous pouvez obtenir le fichier 'pip.log'
Utilisateurs @OSX: Ajoutez les lignes suivantes à votre ~/.profile
ou ~/.bashrc
LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"
Exécutez les scripts en utilisant source ~/.profile
ou source ~/.bashrc
Lors de l'exécution dans un conteneur Docker, cela a été corrigé (pour le projet Django-postgrespool, mais cela devrait également fonctionner ici).
# Set the locale
RUN sed -i -e 's/# en_US.UTF-8 UTF-8/en_US.UTF-8 UTF-8/' /etc/locale.gen && \
locale-gen
ENV LANG en_US.UTF-8
ENV LANGUAGE en_US:en
ENV LC_ALL en_US.UTF-8
essayez Sudo apt-get install python-numpy
..____. Cela a fonctionné pour moi et même peut être utilisé pour scipy, pandas etc. (Y)
Avait un problème similaire sur un Jetson TK1 avec Ubuntu.
Fonctionne bien avec apt-get install python-pandas
Réinitialiser les paramètres régionaux de ma machine sur ceux attendus a résolu mon problème. Pour moi, le problème a commencé lorsque j'ai changé mes paramètres de langue en anglais (Inde). J'ai dû le repasser en anglais (Grande-Bretagne).
Dans mon cas, je venais d'installer Python à partir des sources (sur une machine distante sur laquelle je ne suis pas Sudo
). Pour une raison quelconque, pip
était sur une version très ancienne. Donc après:
python -m pip install --upgrade pip
J'ai pu installer numpy
et tout ce que je voulais sans problème.
Si vous voulez la version pip de numpy, vous pouvez créer les dépendances du paquet puis l’installer à l’aide de pip
Sudo apt-get build-dep python-numpy
pip install numpy
Cela devrait installer tout le nécessaire au niveau du système pour installer le paquet.
J'ai rencontré le même problème. J'ai essayé:
export LC_ALL=C
pip install --upgrade setuptools
Mais cela n'a pas résolu le problème, mais une autre erreur s'est produite:
AttributeError: l'objet 'str' n'a pas d'attribut 'rollback'
Puis j'ai essayé:
pip install -U pip
Ensuite, le problème a été résolu.
Tant de réponses et aucune n’a fonctionné pour moi, même si certaines ont clairement fonctionné pour d’autres personnes. Mais j'ai alors compris quel était mon problème, je vais donc l'ajouter à la collection:
dpkg-reconfigure locales
# enable the "en-US.UTF-8" locale
# when asked for a default, no need to define one
Le fait est que je travaillais dans un conteneur Linux Debian Stretch qui ne disposait d'aucun environnement local UTF-8 installé, probablement parce que j'avais téléchargé une image stock minimale. Avec cette locale UTF-8 maintenant installée, pip correctement installé numpy et d’autres paquetages.