実務に生かすPythonサンプル

【2019年版】Pythonインストール・Mac編【長く安全に使える環境構築】

こんにちは。投資エンジニアの三年坊主(@SannenBouzu)です。

今回は、Pythonを使ったデータ分析や機械学習を手元のMacで試してみたい人の、このような疑問に答えます。

オンラインでの使い方は分かってきたので、Pythonを手元のMacにインストールする方法を知りたい。できれば、気軽にアップデートやアンインストールができて、Pythonを長く安全に使える方法だとありがたい。

私は、大学の研究と自分の趣味で、合わせて5年以上Pythonを使ってきました。

その間にMacの買い替えもあったり、一からPythonのインストールをし直すハメになったことも何度かあります。

この記事では、そのような経験を生かして、PythonをMacにインストールして長く安全に使える方法を紹介します。

この記事はこんな方におすすめ!

  • 手元のMacでPythonを使いはじめたい方
  • インストールしてから時間が経っても、変なエラーに悩まされず気軽にアップデートやアンインストールをしたい方

MacでPythonを使うなら、当然ですが自分のMac環境が必要ですよね。

Pythonを快適に使えるMac環境をこちらの記事で説明していますので、まだMacを持っていない方や、新しいMacで心機一転Pythonをはじめたい方はあわせてご覧ください。

Pythonを快適に使いこなすMac環境【現役エンジニアおすすめはPro 13インチ】MacでPythonプログラミングをしたい人向けに、現役エンジニアおすすめMac環境を紹介します。2011年からMacBook Proを使い続け、Mac買い替えやPythonインストールを経験している私が実体験に基づいて説明します。ぜひご覧ください。...

Pythonインストール・Mac編【基礎知識】

実は、Macには、AppleがデフォルトでPythonをインストールしています。

ですが、MacでPythonを長く安全に使いたいなら、このデフォルトPythonをそのまま使い続けない方がいいです。

デフォルトでPythonがインストールされてるなら、それを使えば楽じゃない?

確かに最初は楽ですけど、あとあといろいろと面倒なんです・・・。

その理由は大きく3つあります。

古い

デフォルトのPythonは最新でないことが多いです。

常に最新のものを使う必要はないですが、あまりに古いものをそのまま使い続けると、セキュリティ面で問題が起こる場合があります。

パーミッションの問題

ライブラリを追加でインストールしたい時に、パーミッションの問題が起こりやすいです。

問題をむりやり解決しようとすると、Macで正常に動いている他のシステムを壊してしまう可能性があります。

ライブラリが消える可能性

OSメジャーアップグレードのたびに、これまでインストールしたライブラリが消えてしまうことがあります。

 

パーミッション

一言でいうと、誰がどのファイル・ディレクトリを「読み込み」「書き込み」「実行」できるか、管理する仕組みです。システムの大切なファイルを間違えて消したりできないようにするなど、とても大切な役割を果たしています。

詳しくは【一通り理解】Linuxパーミッションの基本とその設定方法などを参考にしてください。

ライブラリ

「他のプログラムから利用される前提で作られたプログラム」のことです。データ分析や機械学習をするには、このようなプログラムを追加でインストールする必要があります。

 

具体的に「デフォルトのPython」を確認してみましょう。

/Applicationsの中にある「ターミナル.app」(Terminal.app)を起動して

以下のコマンドを実行します。

 

この記事で使う表記法

  • コメント
  • ターミナル上で実行するコマンド($マークは入力不要)
  • py3envという名前の仮想環境を有効化した状態で実行するコマンド(”(py3env) $” は入力不要)
  • Pythonを起動した状態で実行するコマンド

 

実行結果はこんな感じになります。

 

  • (古い)2.7.10がデフォルトですが2.7.13が最新です。さらに言えばPythonにはバージョン2系と3系がありますが、いまからPythonを使いはじめるなら迷わず3系を使うべきです。
  • (パーミッション)デフォルトのPythonでライブラリが追加される”/System/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7″は、所有者がroot(管理者)になっています。

手元のMacでPythonを動かす方法はいくつかありますが、あとあとトラブルの原因になるので、すぐに使えるデフォルトのPythonを本格的に使わない方がいいです。

 

Pythonインストール・Mac編【バージョン切り替え・アンインストールしやすい環境構築】

デフォルトのPythonを使い続けない方がいいと分かったところで、この項目では、おすすめのインストール方法を紹介します。

Homebrew -> pyenv -> Python 3.6.x -> venv

「仮想環境」を作って、その中でPythonの実行やライブラリの追加をする方法です。

この方法をおすすめするのは、「仮想環境」を作って「その中でなら何をしても大丈夫!」な状態を最初に作っておけば、Mac本体に悪影響を与えずに、何度でも失敗できるからです。

それでは、手順を具体的に見ていきましょう。※手元にある環境(OS X Yosemite 10.10.5)で確認しています

 

Xcode(準備)

Xcodeは、Appleが提供しているソフトウェア開発ツールです。App Storeからインストールしておきましょう。

以降の手順を進めるために必要になるので、XCodeのCommand Line Toolsをインストールします。

 

Homebrew(準備)

Homebrewは、「Apple が用意していないあなたの必要なものをインストール」するためのツールです。

今回は、あとで説明するpyenvをインストールするために使います。

Homebrewのホームページにアクセスして、指示に従ってHomebrewをインストールします。

 

pyenv(バージョン切り替え)

pyenvは、Pythonのバージョンを簡単に切り替えるためのツールです。

あとで「Pythonのバージョン2系が必要になった」としても、このツールを使って簡単にインストールできます。

Homebrewを使ってインストールしていきます。

 

cat << ‘EOS’ >> ~/.bash_profile … EOS

下で出てくるこのコマンドは、このまとまりで1つのコマンドとして、いっぺんに実行します。

「2つのコメントと2つのコマンドを、~/.bash_profileに追記する」という意味になっています。

 

 

このような実行結果になれば大丈夫です。

 

Python 3.6.6(本体)

pyenvを使って、Pythonをインストールします。今回はPython 3.6.6をインストールすることにします。

 

このような実行結果になれば大丈夫です。

 

venv(仮想環境の作成)

venvは、Python標準の仮想環境ツールです。

インターネットで調べると他にもいろいろな仮想環境ツールが出てきますが、Python3.5以降ではvenvを使いましょう。

 

バージョン 3.6 で非推奨: Python 3.3 と 3.4 では、仮想環境の作成に推奨していたツールは pyvenv でしたが、Python 3.6では非推奨です。

バージョン 3.5 で変更: 仮想環境の作成には、 venv の使用をお勧めします。

28.3. venv — 仮想環境の作成 — Python 3.6.6 ドキュメント

 

 

作成した仮想環境の有効化・無効化

ここまでで、Pythonを使いはじめる準備が整いました。

これからPythonを使うときは、必ず仮想環境py3envを有効化してから使うことにします。

といっても、コマンド一つでできるので簡単です。

 

少し長くなってしまいましたが、このように「仮想環境」を作って、その中でPythonの実行やライブラリの追加をするのがおすすめの方法です。

 

Pythonを長く安全に使える方法・Mac編【実践知識】

ここまで準備をしておくと、Pythonを長く安全に使える仕組みができあがっています。

「その中でなら何をしても大丈夫!」な「仮想環境」ができているので、あとは細かいことを気にせず、気軽にアップデートやアンインストールして動作環境を整えられるからです。

実際にPythonを使いながら、気になるであろう疑問点をまとめます。実践寄りの知識として、必要に応じて参考にしてください。

実際に使ってみないと気づかない問題点とか疑問とかあるよね・・・

そうですね。自分自身も時々壁にぶつかるので、その経験も踏まえてまとめておきました。半年もすれば忘れてしまう内容も多いと思うので、必要な時に見返してもらえるとうれしいです。

FAQ: どのPythonを使っているか忘れた

“which python”で確認します。

 

FAQ: 仮想環境の中にライブラリをインストールしたい

ライブラリをインストールする必要があるときには、”pip install”で一つずつインストールしていきます。

 

FAQ: 何のライブラリを入れたか忘れた

今インストールしているライブラリを”pip freeze -l”で確認できます。

この結果をrequirements.txtという名前のテキストファイルで保存しておくと、Pythonをアップデートしたり、環境を作り直したいと思った時に便利です。

※requirements.txtの使い方は、この後の項目で説明します。

 

FAQ: インストールしたライブラリをアップデートしたい

 

FAQ: Pythonをアップデートしたい

例えば、Pythonのバージョンを3.6.6から3.7.yに上げたいときの手順を紹介します。

いままでの仮想環境py3envはそのまま残して、新しい仮想環境py37envでPython3.7.yを使えるようになります。

 

FAQ: 失敗したのでアンインストールして最初からやり直したい

仮想環境は、そのディレクトリを消すだけでOKです。venvを使って新しく仮想環境を作り直せます。

pyenvでインストールしたPythonをアンインストールするには、以下のようなコマンドを使います。

 

以上、FAQの形で実践知識をいくつか紹介しました。

このように、気軽にアップデートやアンインストールして動作環境を整えられるので、長く安全に使える仕組みになっています。

MacにPythonをインストールして、楽しいPythonライフを送りましょう!

 

関連記事:こちらも読まれています

Pythonを快適に使いこなすMac環境【現役エンジニアおすすめはPro 13インチ】

【保存版】Pythonのdatetimeで日付/時間を操作【実務での使用例とハマりどころも解説】

エンジニアが実務で使える本おすすめ10選+α【手元に置きたい】

 

▼経験の棚卸しで納得のキャリアを▼
▼相場に消耗しない資産運用▼
マネースクエア
Pythonチュートリアル

Pythonをインストール、サンプルを通して使い方を学んだら、次は実際に何か作ってみませんか?

手元のパソコンで環境構築不要・Webブラウザだけで、パッと見た人の印象に残るコンテンツを作る手順を一から説明しています。

チュートリアルを見てみる

POSTED COMMENT

  1. にゃい より:

    ありがとう!

  2. […] nMacでは元からpythonが入っているけど、【2018年版】Pythonインストール・Mac編【長く安全に使える方法】によれば、”(バージョンアップ時などの)パーミッションの問題”, “ライブラリが消えることがある”といった問題があるらしいそれはあかんやん! […]

  3. […] 【2019年版】Pythonインストール・Mac編【長く安全に使える方法】|投資エン… […]

  4. むー より:

    「仮想環境」で開発したほうが良い理由はなんとなくわかるのですが、ファイルの入出力をしたい場合、「どこに」読むファイルを置くのか、書き出すのかをどう考えればよいでのしょうか?「仮想環境」の具体的なイメージが掴めなくて、よく理解できずにいます。
    やりたいことはWordファイルなどの読み書きです。
    ここに書いてよいのかわからなかったのですが…よろしくお願いします。

    それと、Xcodeは何のためにインストールするのでしょうか?

    • 三年坊主 より:

      むー 様
      コメントありがとうございます。ご不明点を共有していただいて助かります。
      「仮想環境」といっても、VirtualBoxなど仮想化ソフトのように「OSレベルの仮想環境」ではなく「用途に応じた専用のPython実行環境」を作っているだけですので、ファイルの読み書きについて、ファイルを置く場所は通常どおり作業ディレクトリ(やその他お好みの場所)で問題ありません。


      (py3env) $ cat /Users/XXXXXX/sandbox/test.txt
      こんにちは。投資エンジニアの三年坊主(@SannenBouzu)です。
      (py3env) $

      記事中で説明しなかったVirtualenvに関するリンクではありますが、「仮想環境」の説明として参考にご覧ください。
      https://www.python.jp/install/windows/virtualenv.html

      Xcodeは、MacでHomebrewを使う前提条件として必要なので、下記リンク(と注意書き3)を参考に、App StoreからのXCodeとコマンドラインツールの両方をインストールしています。
      https://docs.brew.sh/Installation#macos-requirements

COMMENT

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

このサイトはスパムを低減するために Akismet を使っています。コメントデータの処理方法の詳細はこちらをご覧ください