質問をすることでしか得られない、回答やアドバイスがある。

15分調べてもわからないことは、質問しよう!

ただいまの
回答率

90.36%

  • Python

    10256questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 3.x

    8407questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

  • Python 2.7

    1385questions

    Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。

numpyのインストールについて

解決済

回答 1

投稿 編集

  • 評価
  • クリップ 0
  • VIEW 1,889

gopan

score 15

自分は以前までPython2系を使っていたのですが、Python3系に変えようと思い最新版をインストールしました。2系と3系の両方を使いたかったので、pipで2系の方に入っているモジュールを3系の方にもインストールしようと思い最初にnumpyのインストールを試みたのですが、以下のようなメッセージが出てインストールすることができませんでした。
試しに2系の方にはインストールしていないpandasを3系にインストールしたところ、無事にインストールできました。なのでこの問題は、2系に既にインストールされているため起こる問題だと考えています。
なお、メッセージ文の2,3行目のエラー文はpandasが無事にインストールできたことから、今回は関係ないと考えています。
以上のことをふまえて、どのようにしたら3系の方でもインストールすることができるのでしょうか?どうかよろしくお願いします。

発生している問題

λ pip install numpy
Error in sitecustomize; set PYTHONVERBOSE for traceback:
AttributeError: module 'sys' has no attribute 'setdefaultencoding'
Requirement already satisfied: numpy in c:\python27\lib\site-packages

補足情報

Windows10
Python2.7
Python3.5
pip9.0.1

Pythonは両方とも公式サイトのWindows用のインストーラからインストールしました。

  • 気になる質問をクリップする

    クリップした質問は、後からいつでもマイページで確認できます。

    またクリップした質問に回答があった際、通知やメールを受け取ることができます。

    クリップを取り消します

  • 良い質問の評価を上げる

    以下のような質問は評価を上げましょう

    • 質問内容が明確
    • 自分も答えを知りたい
    • 質問者以外のユーザにも役立つ

    評価が高い質問は、TOPページの「注目」タブのフィードに表示されやすくなります。

    質問の評価を上げたことを取り消します

  • 評価を下げられる数の上限に達しました

    評価を下げることができません

    • 1日5回まで評価を下げられます
    • 1日に1ユーザに対して2回まで評価を下げられます

    質問の評価を下げる

    teratailでは下記のような質問を「具体的に困っていることがない質問」、「サイトポリシーに違反する質問」と定義し、推奨していません。

    • プログラミングに関係のない質問
    • やってほしいことだけを記載した丸投げの質問
    • 問題・課題が含まれていない質問
    • 意図的に内容が抹消された質問
    • 広告と受け取られるような投稿

    評価が下がると、TOPページの「アクティブ」「注目」タブのフィードに表示されにくくなります。

    質問の評価を下げたことを取り消します

    この機能は開放されていません

    評価を下げる条件を満たしてません

    評価を下げる理由を選択してください

    詳細な説明はこちら

    上記に当てはまらず、質問内容が明確になっていない質問には「情報の追加・修正依頼」機能からコメントをしてください。

    質問の評価を下げる機能の利用条件

    この機能を利用するためには、以下の事項を行う必要があります。

質問への追記・修正、ベストアンサー選択の依頼

  • gopan

    2016/12/18 11:13

    エラーメッセージについて省略している部分はありません。

    キャンセル

  • ikedas

    2016/12/18 11:24

    「PYTHONVERBOSE=1」を実行したうえで再度pipを実行し、出力されたエラーメッセージを見せてください。

    キャンセル

  • gopan

    2016/12/18 11:47

    「PYTHONVERBOSE=1」の実行後なのですが、メッセージは全く変わっていませんでした。

    キャンセル

回答 1

checkベストアンサー

0

要件が以下の2点であるならばAnacondaを利用するのはどうでしょうか。
Anacondaはpythonと主要なライブラリをまとめてパッケージしたもので、LinuxにおけるUbuntuとかCentOSのようなディストリビューションパッケージの位置づけのものです。numpyはAnacondaに含まれているためインストール不要です。

  • Python2系と3系の両方を使える環境にしたい
  • numpyをインストールしたい

Anacondaは以下からダウンロードできます。

Python3.5バージョンをインストールし、2.7についてはpython仮想環境を使用する方法があります。

自分の環境でAnaconda4.2(Python3.5 version)を使用していたので、Python2.7仮想環境を作成してみました。

> conda create -n py27 python=2.7 anaconda

イメージ説明

以下のコマンドでパッケージを最新版に更新しておくとよいでしょう。

> conda update --all
> conda update -n py27 --all

【最初の回答】

インストールコマンドを以下のように実行すればよいです。(パス確認していないので、pip.exeの位置は自分の環境で確認してください)

{Python3.5をインストールしたパス}\Scripts\pip.exe install numpy

【補足】

Python2.7とPython3.5の両方をインストールしてpipコマンドを実行した場合、インストール先のパスを指定しなければ環境変数PATHで先に指定されているほうのpipコマンドが実行されます。

質問内容の場合であれば、C:\python27\Scripts\pip.exeあたりが実行されているのだと思います。

環境変数PATHは以下のようにすれば確認しやすいです。

  • スタートメニューから「すべてのプログラム > アクセサリ > Windows PowerShell > Windows PowerShell」を選択
  • PowerShellコンソールで以下のコマンドを実行
$Env:PATH.Split(";")

Python3.5のインストールフォルダより、Python27のインストールフォルダのほうが先に表示されていることが確認できると思います。

【追記】

以下のコマンドの結果はどのようになっているでしょうか。

> pip --version
> python -c 'import sys; print(sys.path)'

投稿

編集

  • 回答の評価を上げる

    以下のような回答は評価を上げましょう

    • 正しい回答
    • わかりやすい回答
    • ためになる回答

    評価が高い回答ほどページの上位に表示されます。

  • 回答の評価を下げる

    下記のような回答は推奨されていません。

    • 間違っている回答
    • 質問の回答になっていない投稿
    • スパムや攻撃的な表現を用いた投稿

    評価を下げる際はその理由を明確に伝え、適切な回答に修正してもらいましょう。

  • 2016/12/18 05:08

    ご回答ありがとうございます。
    教えていただいたコマンドを打ったのですが、同じメッセージが出ました。PATHは確認しましたがPython35の方が上にありました。また、Python27のPATHを外してから試したのですが結果は変わりませんでした。なのでPATHは関係ないのではと考えているのですが、どうでしょうか?

    キャンセル

  • 2016/12/18 11:24

    追記について
    λ pip --version
    Error in sitecustomize; set PYTHONVERBOSE for traceback:
    AttributeError: module 'sys' has no attribute 'setdefaultencoding'
    pip 9.0.1 from C:\Python35\lib\site-packages\pip-9.0.1-py3.5.egg (python 3.5)

    λ python -c 'import sys; print(sys.path)'
    Error in sitecustomize; set PYTHONVERBOSE for traceback:
    AttributeError: module 'sys' has no attribute 'setdefaultencoding'
    ['', 'C:\\Python35\\lib\\site-packages\\pip-9.0.1-py3.5.egg', 'C:\\Python27\\Lib\\site-packages', 'C:\\Python35\\python35.zip', 'C:\\Python35\\DLLs', 'C:\\Python35\\lib', 'C:\\Python35', 'C:\\Python35\\lib\\site-packages']

    となりました。

    またAnacondaの件なのですが、私は以前Anacondaを使用していたのですがよくわからないエラーが起き、その際試しに公式サイトからインストールしたPythonで実行したらエラーが起きなかった、ということがあり、以上のことからAnacondaは使わないことにしています。
    自分の時間と都合上なぜAnacondaだとエラーが起きるのか解決することができなかったので、できればAnaconda以外の方法で今回の問題を解決する方法はないでしょうか?
    よろしくお願いします。

    キャンセル

  • 2016/12/18 11:58

    現在の質問者さんの環境ではPython 2.7とPython 3.5が混ざってしまっているようですので、現状のまま進めるよりも、tkmtmktさんがおっしゃるやりかたがよいと思います。

    Anaconda等を追加したくないのでしたら、現状で最も簡単、確実な方法は、Python 2.7、3.5双方をいったん完全にアンインストール (numpyなどのライブラリもアンインストール) した上で、Python 3.5とその関連ソフトウェアだけインストールしなおすことだと思います。

    キャンセル

  • 2016/12/18 12:49

    Anacondaでよく分からないエラーが起きたが公式サイトのpythonでエラーが起きなかったとここですが、Anacondaはpython+ライブラリにすぎないので追加ライブラリでエラーが起きていたという推測できます。今回ライブラリを追加しようとしたらエラーになるというのは同じ原因である可能性は高いと思います。

    sys.path に 'C:\\Python27\\Lib\\site-packages' が混じっているのが問題の原因と思われるので、これがどこで読み込まれているのかを探す必要があります。

    環境変数やホームディレクトリ以下に、設定ファイルがないか探してみる必要がありそうです。

    キャンセル

  • 2016/12/18 17:46

    でしたら、ikedasさんのコメントにあった通りに一度両方のPythonをアンインストールして、インストールし直すことが一番手っ取り早い方法なのでしょうか?

    キャンセル

  • 2016/12/18 21:53

    sys.pathにPython27が含まれている件について、「python sys.path 設定」などで検索した結果を読んで、自分の環境を調べてみるとかされましたでしょうか。
    すぐに見つかる情報としては環境変数PYTHONPATHや、$HOME/.localフォルダ内に格納されるモジュールで設定できることが分かるので、自分の環境でどうなっているかを調べるのにたいして時間はかからないと思います。

    自分で考えることをやめて半日以上もうすぼんやりと回答待っているくらいならば、インストールしなおしたほうが手っ取り早いでしょう。

    キャンセル

  • 2016/12/19 01:11

    sys.pathの設定を変更したところ、無事に問題が解決しました。
    ありがとうございました。

    キャンセル

同じタグがついた質問を見る

  • Python

    10256questions

    Pythonは、コードの読みやすさが特徴的なプログラミング言語の1つです。 強い型付け、動的型付けに対応しており、後方互換性がないバージョン2系とバージョン3系が使用されています。 商用製品の開発にも無料で使用でき、OSだけでなく仮想環境にも対応。Unicodeによる文字列操作をサポートしているため、日本語処理も標準で可能です。

  • Python 3.x

    8407questions

    Python 3はPythonプログラミング言語の最新バージョンであり、2008年12月3日にリリースされました。

  • Python 2.7

    1385questions

    Python 2.7は2.xシリーズでは最後のメジャーバージョンです。Python3.1にある機能の多くが含まれています。