web-dev-qa-db-ja.com

PIP Install Numpyは「asciiコーデックはバイト0xe2をデコードできません」というエラーをスローします

新しく構築したコンピューターに、新しくインストールしたUbuntuがあります。 apt-getを使用してpython-pipをインストールしました。 NumpyとPandasをpipインストールしようとすると、次のエラーが発生します。

このエラーはSOとGoogleのかなりの場所で言及されていますが、解決策を見つけることができませんでした。バグだと言う人もいれば、スレッドが死んだだけの人もいます。

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)
66
Josh.F

私は最近、この正確な問題を抱えて使用しました

apt-get install python-numpy

これにより、numpyがシステムpythonインタープリターに追加されます。 matplotlibでも同じことをしなければならなかったかもしれません。 virtualenvで使用するには、環境を作成する必要があります

--system-site-packages

オプション

http://www.scipy.org/install.html

45
Jeff M.

私にとっては、@ Charles Duffyのコメントで解決しました。これをenvに入れてください:

LC_ALL=C

次のような行を使用して、.bashrcに追加できます。

export LC_ALL=C

ただし、他のすべてのプログラムに影響を与えることに注意してください。したがって、あなたはピップ実行のためだけにそれを使用したいかもしれません:

$ LC_ALL=C pip install ...

36
msemelman

Pipを更新してみてください:

pip install -U pip
12
Noah

Matplotlibパッケージで問題が発生しました。私は実行しなければなりませんでした:

export LC_ALL=C
pip install --upgrade setuptools
7
max

私にとってこれは、(おそらく)破損したキャッシュを無視することで解決しました。

pip install --no-cache-dir ...

ここに記載されているとおり: https://github.com/pypa/pip/issues/2674

4
jvd10

pip install pandasの実行時に同様のエラーが発生しましたが、これはメモリ不足が原因でした。仮想マシンのメモリを4Gに増やすと、問題は解決しました。

3
Selah

の組み合わせ

Sudo apt-get install python-dev

そして

export LC_ALL=C
pip install --upgrade setuptools

私の問題を解決しました。

3
Ali

最近、私は同じ問題に出くわしましたこれは私のためにそれを解決しました:

              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

注意、

Python-numpyとpython-devがすでにインストールされています。これでさえ、システムに問題を引き起こす可能性があります。 en_US.UTF-8(または他の言語)の代わりにLC_ALL = Cをエクスポートすることもできます

2
harshhx17

「site-packages」ディレクトリで、「sitecustomize.py」を次のように作成します

import sys
sys.setdefaultencoding("utf-8")

これで、ファイル「pip.log」を取得できます

1
Toby Seo

@OSXユーザー:~/.profileまたは~/.bashrcに次の行を追加します

LANG="en_US.UTF-8"
LC_COLLATE="en_US.UTF-8"

source ~/.profileまたはsource ~/.bashrcを使用してスクリプトを実行します

1
Nikhil

Dockerコンテナで実行する場合、これにより修正されました(プロジェクトDjango-postgrespoolですが、ここでも機能するはずです)。

# 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   

https://stackoverflow.com/a/28406007/18762 を参照してください

1
Jan DB

Sudo apt-get install python-numpyを試してください。それは私のためにうまくいき、同じものをnumpyの代わりに置き換えることでscipy、pandasなどに使用することができます。 (Y)

1
Tavleen

UbuntuのJetson TK1でも同様の問題がありました。

apt-get install python-pandasで正常に動作します

0
rafaelvalle

マシンの地域の設定を予期したものにリセットすると、問題が解決しました。私にとっては、言語設定を英語(インド)に切り替えたときに問題が始まりました。英語(イギリス)に戻す必要がありました。

0

私の場合、ソースからPythonをインストールしました(私はSudoではないリモートマシンに)。なんらかの理由で、pipは古いバージョンでした。だから後:

python -m pip install --upgrade pip

numpyおよび必要なものすべてを問題なくインストールできました。

0
Pete

Numpyのpipバージョンが必要な場合は、パッケージの依存関係を構築してから、pipを使用してインストールできます

Sudo apt-get build-dep python-numpy
pip install numpy

これにより、パッケージをインストールするためにシステムレベルで必要なすべてがインストールされます。

0
arinarmo

同様の問題に出会いました。私は試した:

export LC_ALL=C
pip install --upgrade setuptools

しかし、問題は解決しませんでしたが、別のエラーが発生しました:

AttributeError: 'str'オブジェクトには属性 'rollback'がありません

それから私は試しました:

pip install -U pip

その後、問題は解決しました。

0
Eleven

明らかに他の人のために働いたものもありましたが、私にとっては多くの答えがあり、どれも私にとってはうまくいきませんでした。しかし、その後、私の問題が何であるかを把握したので、それをコレクションに追加します。

dpkg-reconfigure locales
# enable the "en-US.UTF-8" locale
# when asked for a default, no need to define one

問題は、たぶん最小限のストックイメージをダウンロードしたため、UTF-8ロケールがインストールされていないDebian Stretch linuxコンテナ内で作業していたことです。このUTF-8ロケールがインストールされると、pipはnumpyおよびその他のパッケージを適切にインストールしました。

0
jlh