8866


自分のpipは以下に入っているのですが、

[code]

    $ which pip
    /Library/Frameworks/Python.framework/Versions/3.4/bin/pip
    
[/code]

多分ここにpipが入っているせいで `requests`
などをpipでインストールしても、python2.7.6で使えない状態になってます。どうやったら解決できるのでしょうか。何卒お知恵をお貸しください。

`python` と `pip` でpython 2.7.6を、`python3` と `pip3` でpython 3.4.3を使えるようにしたいです。  
よろしく御願い致します。

[code]

    $ which python
    /usr/bin/python
    
    $ which python3
    /Library/Frameworks/Python.framework/Versions/3.4/bin/python3
    
    $ which easy_install
    /Library/Frameworks/Python.framework/Versions/3.4/bin/easy_install
    
    $ which pip
    /Library/Frameworks/Python.framework/Versions/3.4/bin/pip
    
    $ which pip3
    /Library/Frameworks/Python.framework/Versions/3.4/bin/pip3
    
[/code]


CC BY-SA 3.0
2015-04-06T14:18:52.057
8832
2015-04-07T14:16:45.823
2015-04-06T14:40:22.243
8000
9192
question
python macos
pipコマンドでPython2、pip3コマンドでPython3が使われるようにしたい


OSとPythonをインストールした方法（Python公式のインストーラを使ったのか、Homebrewなどのツールを使ったのか）は書いていただけると回答しやすいと思います。

以下、Python3はPython公式のインストーラでインストールした（この方法→[4. Macintosh で Python を使う — Python
3.3.6
ドキュメント](http://docs.python.jp/3.3/using/mac.html)）もので、Python2は自分ではインストールしていない、と考えて回答します。違いましたら無視してください。

まず、Python 2.7用の pip はインストールされているのでしょうか？今は OS 標準でインストールされている Python2
を使っているようですが、このバージョンには標準では pip は付属していません。別途インストールが必要です。

もしまだ pip をインストールしていないようでしたら、pip と一緒に Python2 も Python3
同様にシステムとは別にインストールすることをおすすめします。理由は公式ドキュメント（[Macintosh で Python を使う — Python
2.7ja1 documentation](http://docs.python.jp/2.7/using/mac.html)）にもあるように、OS
に予期せぬ影響を与えないためです。

> Apple が提供している Python は /System/Library/Frameworks/Python.framework と
> /usr/bin/python にそれぞれインストールされています。これらは Apple が管理しているものであり Apple
> やサードパーティのソフトウェアが使用するので、編集したり削除してはいけません。

システムとは別に Python2 と pip をインストールするには、公式から配布されている Python2.7.9
のパッケージを使うのが簡単だと思います。pip のインストールやパスの設定も自動でやってもらえます。

[Macintosh で Python を使う — Python 2.7ja1
documentation](http://docs.python.jp/2.7/using/mac.html)

特に理由がなければこの方法でいいと思います。記述されているバージョンは古いですが、インストール方法に違いはなさそうです。Homebrewなどを使いたい場合はそれでもいいと思いますが、最終的に
Python3 と同じ方法でインストールされている方が後々管理しやすいと思います。

どうしてもシステムのPythonを使いたい場合、あるいはすでに pip をインストールしていてそれを使いたい場合、その pip のパスが python3 の
pip より先に来るようにシェルの設定ファイルで PATH を設定するか、エイリアスを設定（ `alias
pip=/path/to/pip`）してしまえばいいのではないでしょうか。仮想環境での利用を考えると、PATH を設定したほうがいいと思います。

既存の Python に pip をインストールする方法は [Python - いつの間にかpipのインストールが楽になってた件 -
Qiita](http://qiita.com/who_you_me/items/831d62f396e6d66dda66)
などが参考になります。おそらくワンライナーの最後の `python` の前に `sudo` が必要です。


CC BY-SA 3.0
2015-04-07T09:48:06.710
8866
2015-04-07T09:48:06.710
3589
8832
answer


ほとんど Python を使わないのですが予備用として pyenv でインストールしています。  
当方ではご希望のような `python2` / `python3` の使い分けが出来ているので、その環境の作り方を簡単にご案内します。

  * [yyuu/pyenv](https://github.com/yyuu/pyenv)

pyenv 自体は `git clone https://github.com/yyuu/pyenv.git ~/.pyenv` で入りますし、
Homebrew を使っているならば `brew install pyenv` でもインストール出来ます。

pyenv インストールが終わったら、`.bash_profile`
への[設定](https://github.com/yyuu/pyenv#installation) を行います（詳細はリンク先を確認してください）。  
引き続いて Python の各バージョンの（最新のものを）インストールをします。もちろんご希望の2.7.6を指定してもかまいませんが。

[code]

    $ pyenv install 2.7.9
    $ pyenv install 3.4.3
    
[/code]

インストールされているバージョンを確認します。

[code]

    $ pyenv versions
    * system (set by /Users/riocampos/.pyenv/version)
      2.7.9
      3.4.3
    
[/code]

おまたせしました。ご希望の環境を設定します。

[code]

    $ pyenv global 2.7.9 3.4.3
    
    $ pyenv versions
      system (set by /Users/riocampos/.pyenv/version)
    * 2.7.9
    * 3.4.3
    
[/code]

`pyenv global` 直後に指定したバージョンが `python` コマンドでのデフォルトバージョンになります。  
なお Homebrew では `python` コマンドで動作するバージョンが Python
2系であると決め打ちしているものがあるので、2系と3系、という順序にしておくのが無難です（[homebrewを使うならばpyenvでは必ずPython2を一つ目に設定すること（もしくはPython3を優先したMacでのRicty作成苦労話）
- 別館
子子子子子子（ねこのここねこ）](http://d.hatena.ne.jp/riocampos+tech/20140406/pyenv_must_be_set_python2_as_python)）。

では設定状況を確認してみましょう。

[code]

    $ python --version
    Python 2.7.9
    $ python2 --version
    Python 2.7.9
    $ python3 --version
    Python 3.4.3
    
    $ pip --version
    pip 6.1.1 from /Users/riocampos/.pyenv/versions/2.7.9/lib/python2.7/site-packages (python 2.7)
    $ pip2 --version
    pip 6.1.1 from /Users/riocampos/.pyenv/versions/2.7.9/lib/python2.7/site-packages (python 2.7)
    $ pip3 --version
    pip 6.0.8 from /Users/riocampos/.pyenv/versions/3.4.3/lib/python3.4/site-packages (python 3.4)
    
[/code]

これでご希望の使い分けが可能です。ホームディレクトリ以下にインストールされているので `sudo` も不要です。

お役に立ちますことを願っております。


CC BY-SA 3.0
2015-04-07T14:16:45.823
8875
2015-04-07T14:16:45.823
4114
8832
answer