見出し画像

Python環境構築ベストプラクティス(非プログラマ向け・Mac編)【改訂版】

【改訂版について】
初版では Homebrew デフォルトの最新版 Python をそのままインストールする手順でしたが、機械学習系ライブラリとの互換性の観点から、十分に枯れたバージョン(3.12)を指定する手順に変更しました。変更箇所は Step 3 です。
「付録:仮想環境をやり直す方法」を追記しました。
「付録:tkinter が動かない場合の環境変数設定」を追記しました。

はじめに:環境構築で詰まるのは「方法が多すぎる」から

どれがいいの?

「環境構築」とは、Pythonスクリプトを動かすために必要なソフトを揃えて、動く状態にする作業のことです。プログラミングを始める最初の関門です。

Pythonを始めようとして、最初の壁にぶつかる人が多くいます。「Python インストール」で検索して調べると方法がいくつも出てきて、どれが正しいのかわからない。

  • python.org から直接インストール

  • Homebrew でインストール

  • Anaconda でインストール

  • pyenv でインストール

どれが正しいのでしょうか。結論から言うと、非プログラマがPythonスクリプトを動かすなら、Homebrew でインストールするのが最もシンプルで安定します。

各方法に長所・短所はありますが、この記事では「迷わない・詰まらない」を最優先に、著者が実際に使っている方法を紹介します。

手順どおりにコピペで進めれば、Pythonのことを何も知らなくても環境構築を完了できます。 コマンドの意味は都度説明しますが、意味がわからなくても手順は進みます。まず動かすことを優先してください。

この記事で使うツールは以下の2つです。

  • Homebrew:Mac 用の「ターミナルで使えるアプリストア」

  • VS Code:スクリプトの確認・編集と実行をまとめて行えるエディタ(無料)

この2つを入れれば、Pythonスクリプトをすぐに動かせる状態になります。

この記事はMac専用です
Windows の方は別の手順が必要です。この記事の対象外となります。

Windows の方はこちら



なぜ Python なのか

Pythonが強力な理由のひとつは、パッケージの豊富さです。たとえばQRコードを生成する機能を自力で実装しようとすると、何千行ものコードが必要です。しかしPythonでは、`pip install qrcode` コマンドでパッケージをインストールして、`import qrcode` の1行でその機能をまるごと追加できます。サンプルコードは次の通りです。

import qrcode

img = qrcode.make('Some data here')
img.save("some_file.png")

`pip`(ピップ)はPythonのパッケージ管理ツールで、PyPI(pypi.org) という公開リポジトリからパッケージを検索・インストールできます。現在50万件以上のパッケージが公開されており、画像処理・データ分析・Web操作・音声処理など、あらゆる用途のパッケージが揃っています。このエコシステムの充実がPythonを選ぶ大きな理由です。

PyPIサイト

コラム|ライブラリ・パッケージ・モジュールの違い
この3つは似た意味で使われますが、文脈によって使い分けがあります。
パッケージ:`pip install` でインストールする単位。「外から持ってくる」操作の文脈で使います(例:「パッケージをインストールする」)
ライブラリ:パッケージやモジュールを含む広い総称。「機能・ツール」として紹介する文脈で使います(例:「画像処理ライブラリ」「ライブラリが使えない」)
モジュール:`.py` ファイル1つの単位。`import` で読み込む対象(例:`import qrcode`)
日常的な会話では「ライブラリ」と「パッケージ」はほぼ同義として使われます。厳密な区別より、文脈に合った言葉を選ぶ感覚で大丈夫です。


全体の流れ

手順は6ステップです。

  1. ターミナルを起動する

  2. Homebrew をインストールする

  3. Python・VS Code をインストールする

  4. Python 拡張機能をインストールする

  5. 仮想環境を作る

  6. Pythonを動かしてみる

順番に進めていきましょう。


Step 1:ターミナルを起動する

ターミナルは、Mac に最初から入っているアプリです。コマンド(文字)でコンピュータに命令を出す画面で、環境構築の操作はここから行います。

`Command + Space` を押して Spotlight を起動し、「ターミナル」と入力して起動します。あるいは、アプリケーションフォルダ、またはLaunchpadからアプリアイコンをクリックします。

Spotlightで検索

黒い(または白い)画面のウィンドウが開けばOKです。

ターミナルが起動する

コラム|ターミナルって怖い?
ターミナルを怖いと感じるのは正しい感覚です。操作を誤ると、データが消えて復旧できない場合があります。特に `rm` から始まるコマンドは削除コマンドですから注意してください。
ただし、この記事に載っているコマンドはすべて安全を確認しています。コマンドは必ずコピペで実行してください。手入力によるタイプミスが一番危険です。不安なコマンドは、ChatGPTなどに「このコマンドは何をするものですか」と確認するクセをつけておくとよいでしょう。


Step 2:Homebrew をインストールする

Homebrew(ホームブリュー)は、Mac 用のパッケージマネージャーです。「ターミナルで使えるアプリストア」と思ってください。これを使って Python と VS Code をまとめてインストールします。

2-1. Command Line Tools をインストールする

Homebrew を入れる前に、macOS の開発に必要な基本ツール一式(Command Line Tools)を用意します。以下のコマンドをターミナルに貼り付けて Enter を押します。

xcode-select --install
xcode-select --installコマンドを実行

画面の指示に従ってインストールしてください。数分かかります。

2-2. Homebrew をインストールする

Homebrew 公式サイト(https://brew.sh/ja/) を開き、表示されているインストールコマンドをコピーして、ターミナルに貼り付けて Enter を押します。

Homebrew公式サイト

コマンドはこのような形です(必ず公式サイトからコピーしてください):

/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"

途中でMacのログインパスワードを求められたら入力します。数分かかります。

2-3.【重要】「Next steps:」を実行する

インストール完了後、ターミナルに 「Next steps:」 という見出しで数行のコマンドが表示されます。これは `brew` コマンドをターミナルで使えるようにするための設定です。この手順を飛ばすと次のステップで詰まります。 表示されたコマンドをすべてコピーして実行してください。

2-4. インストールを確認する

以下を入力して Enter を押します。

brew --version

「Homebrew 5.x.x」のようなバージョン番号が表示されれば成功です。

コラム|なぜ Anaconda は使わないのか
Anaconda (アナコンダ)は機械学習・データサイエンス向けの大規模なツール一式です。自動化スクリプトを動かすだけなら不要なものが多く、ライセンスや容量の面でも非プログラマの用途には向きません。この記事では扱いません。

Step 3:Python・VS Code をインストールする

Homebrew が準備できたら、以下の1行で Python と VS Code をまとめてインストールします。

brew install python@3.12 visual-studio-code
  • python@3.12:スクリプトを動かすプログラミング言語本体(バージョン3.12を指定)

  • visual-studio-code:スクリプトの確認・編集と実行をまとめて行えるエディタ

`python@3.12` とバージョンを指定しているのには理由があります。`brew install python` とだけ書くと、2025年4月時点では最新版の Python 3.14 がインストールされます。しかし、PyTorch や TensorFlow などの機械学習系ライブラリが 3.14 にまだ対応しておらず、インストールできません。機械学習系のライブラリは、直接使わない場合でも多くのライブラリが内部で前提としているため、対応していないと思わぬところで詰まります。

実は著者自身、音響系の機械学習スクリプトを開発する際にこの問題にぶつかりました。ライブラリ間のバージョン競合が解消できず、Python 3.12 に切り替えたところ問題なく動作するようになった、という経験がこの改訂のきっかけです。

個人的な見解として、Python は最新版より十分に枯れたバージョンを使うことをおすすめします。 3.12 はリリースから1年半以上が経過しており、主要なライブラリがすべて安定してサポートしています。初心者が環境構築で詰まるリスクが大幅に減ります。

コラム|Pythonのバージョン — 最新版(3.14) vs 枯れた安定版(3.12)
Pythonのバージョンは「3.12.3」のように3つの数字で表されます。真ん中の数字(12)が機能追加のバージョンで、毎年10月に1つ上がります。末尾の数字(3)はバグ修正です。
Pythonには、2系から3系へのアップデートで互換性が完全に失われたという過去があります。当時、2系で書かれた膨大なコードが3系では動かなくなり、移行に何年もかかりました。この経験はPythonコミュニティに深く刻まれています。3系になってからは互換性が壊れることはなくなりましたが、毎年の機能追加に対してライブラリ側の対応が追いつかないという問題は残っています。新しいバージョンが出ても、主要なライブラリが対応するまでに数ヶ月かかるのが通例です。
つまり、Pythonのバージョン選びは「最新の機能を使いたいか」「できるだけ多くのライブラリとの互換性をとるか」のトレードオフです。最新の 3.14 はライブラリ対応がまだ不十分で、環境構築の時点でつまずくリスクがあります。一方 3.12 はリリースから十分な時間が経ち、ほぼすべての主要ライブラリが対応済みです。初心者にとっては、最新機能のメリットよりも、ライブラリが確実に動くことのほうがはるかに重要です。迷ったら、枯れた安定版を選んでおけば間違いありません。

インストールには数分かかります。完了後、Python が正しく入ったか確認します。

python3 --version

「Python 3.12.x」のようなバージョン番号が表示されれば成功です。

3-2. tkinter をインストールする

tkinter は Python 標準の GUI ツールキットです。グラフィック描画(turtle など)に使われます。Homebrew 版 Python では tkinter が別パッケージになっているため、以下のコマンドで追加します。

brew install python-tk@3.12

インストール後、正しく動くか確認します。

python3 -c "import tkinter; print('OK')"

`OK` と表示されれば成功です。

エラーが出た場合は、「付録:tkinter が動かない場合の環境変数設定」を参照してください。

コラム|なぜ python3 コマンドなのか
「python3」と「3」が付くのは、macOSの歴史が関係しています。かつてのmacOSにはPython 2系が標準で入っており、`python` コマンドがそれを指していました。Python 3系へのアップデートで2系との互換性が失われたため、3系は `python3` と別コマンドで区別する慣習が生まれました。現在のmacOSにはPython 2系は入っていませんが、慣習として `python3` の表記が残っています。


Step 4:Python 拡張機能をインストールする

VS Code を起動します。アプリケーションフォルダ、またはLaunchpadから「VS Code」を開いてください。

「Get started with VS Code」画面では、「AIを使うか」「テーマを選ぶか」など聞かれますが、これらは後からいつでも変更できます。今は Mark Done (完了)を押して、この画面を閉じてしまってOKです。

VS Codeの初期設定画面

Python 拡張機能(エクステンション)を追加します。拡張機能とは、VS Code に後から追加できる「プラグイン」のようなものです。Python 拡張機能を入れると、VS Code がスクリプトの構文(書き方のルール)に色を付けて表示したり、次の Step で使う仮想環境を管理できるようになります。

  1. 左サイドバーの拡張機能アイコン(四角が4つ並んだアイコン)をクリックする

  2. 検索欄に「Python」と入力する

  3. Microsoft 製の「Python」拡張機能をクリックして「Install」を押す

Python拡張機能(エクステンション)

Python拡張機能の設定画面が表示されたら、Mark Done(完了) を押して閉じてしまってOKです。

コラム|VS Code を日本語にしたい場合
VS Code はデフォルトで英語です。日本語のほうが安心な方は、次の手順で日本語化できます。
1. 左サイドバーの拡張機能アイコンをクリックし、検索窓に「Japanese」と入力
2. 「Japanese Language Pack for Visual Studio Code」を [Install] し、右下の再起動ボタンを押す


Step 5:仮想環境を作る

「仮想環境」とは、プロジェクト専用のPython実行環境のことです。

なぜ必要なのか? Pythonのスクリプトは「ライブラリ」(追加の機能パック)を使います。ライブラリはスクリプトによって必要なバージョンが違い、そのまま混在させると動かなくなることがあります。仮想環境を使うと、スクリプトごとに専用の実行環境を作れるため、他のスクリプトに影響を与えません。Mac 全体のPython環境を汚さずに済む、というのが最大のメリットです。

難しく考えなくて大丈夫です。「スクリプトごとに専用の部屋を作る」というイメージで、VS Code が自動でやってくれます。

VS Code の「環境を作成」機能を使うと、仮想環境の作成を自動で完了できます。

5-1. 仮想環境の作り方

まず、作業フォルダを VS Code で開きます。メニューの 「ファイル(File) → フォルダーを開く(Open Folder)」 からフォルダを選択してください。書類(Documents)フォルダに「python_scripts」という名前のフォルダを作って、それを開くと良いでしょう(別のフォルダでもOK)。

次に、仮想環境を作成します。

  1. `Command + Shift + P` を押してコマンドパレット(VS Code への命令入力欄)を開く

  2. 「python」と入力して、候補が表示されるのを待つ

  3. Python: 環境の作成 (Create Environment)」を選択する

Python環境の作成(エクステンションの機能)

4. [Quick Create] を選択する

Quick Createで環境構築が完了する

処理が完了すると、フォルダ内に `.venv` というフォルダが生成されます(`.venv` が仮想環境の本体です)。仮想環境の作成はこれで完了です。

「Quick Create」が表示されない場合

「venv」を選んでください。次の画面でインタープリターとして「Python 3.12.x Global(一番上に表示)」を選択します。

プロジェクトに `requirements.txt(プロジェクトに必要なライブラリが書き込まれているファイル)` が含まれているときは、このファイルをチェックします。「OK」を押します。

必要なパッケージを一括でインストールできる

『Quick Create」は、上記の手順を自動で行うものです。どちらを選んでも同じ結果となります。

5-2. 仮想環境の確認

VS Code の内蔵ターミナルを開きます。メニューの `表示(View) → ターミナル(Terminal)`(または `Control + Shift + @`)で表示できます。

行の先頭に `(.venv)` が表示されていれば、ターミナルが仮想環境に入っている状態です。もし表示されていない時は、ターミナル右上の「ゴミ箱」アイコンでターミナルを閉じて、再度開くと、自動で仮想環境に入れます。

次のコマンドを実行します。`pip` でインストール済みのパッケージの一覧を表示できます。

pip list
pip listコマンド(前)

パッケージをインストールするには `pip install パッケージ名` を使います。試しに代表的な2つをインストールしてみましょう。

pip install numpy requests
  • numpy:数値計算ライブラリ。配列・行列の演算や統計処理に使われる、データ処理の定番

  • requests:HTTP通信ライブラリ。URLを指定するだけでWebページのデータを取得できる

再度 `pip list` を実行して、`numpy` と `requests` が一覧に表示されていれば成功です。

pip listコマンド(後)

`numpy` と `requests` 以外にも複数のパッケージが表示されているはずです。これはパッケージの依存関係によるものです。`numpy` や `requests` 自体が動くために必要な別のパッケージが、自動でまとめてインストールされています。意図して入れていないパッケージが増えていても問題ありません。

5-3. 仮想環境に入れているか、常に確認する

仮想環境は「入った状態」でないとライブラリが使えません。ターミナルの行の先頭に `(.venv)` が表示されているかどうかで確認できます。

VS Code でプロジェクトフォルダを開いた場合、ターミナルを起動すると、Python拡張機能により自動で仮想環境に入った状態になります。`(.venv)` が表示されていれば正常です。

Mac 標準のターミナルや Cursor など、VS Code 以外のアプリでターミナルを開いた場合は、仮想環境に入っていない状態になります。このとき `python` コマンドが使えない、インストールしたはずのパッケージが見つからない、という問題が起きます。ここは、初心者が詰まりやすいポイントです。

この場合は、プロジェクトフォルダに移動してから次のコマンドを実行します。

source .venv/bin/activate

行の先頭に `(.venv)` が表示されれば成功です。作業が終わったら次のコマンドで仮想環境から出られます。

deactivate

5-4. requirements.txt でパッケージをまとめてインストールする

スクリプトによっては、プロジェクトフォルダ内に `requirements.txt` というファイルが含まれていることがあります。これは「このスクリプトを動かすために必要なパッケージの一覧」です。

このファイルがある場合は、VS Code のターミナルで以下を実行します。

pip install -r requirements.txt

必要なパッケージがまとめてインストールされます。このファイルがなければ、この手順は不要です。

コラム|挫折を防ぐ設定:Auto Save
初心者がよくハマる罠があります。スクリプトを書き換えたのに保存し忘れて、古いコードを実行してしまうことです。
VS Code の Auto Save(自動保存)を有効にしておきましょう。メニューの「File(ファイル) → Auto Save(自動保存)」をクリックしてチェックマークがつけば完了です。


Step 6:Pythonを動かしてみる

環境が整ったところで、Pythonを実際に動かしてみましょう。

6-1. インタラクティブシェルを起動する

VS Code のターミナルで `python` とだけ入力して Enter を押します。仮想環境内では、「python3」コマンド(macOSのデフォルトPythonを開く)ではなく「python」コマンド(仮想環境のPythonを開く)を使います。

python

`>>>` というプロンプトが表示されれば、インタラクティブシェル(Python を1行ずつ試せる実行環境)が起動した状態です。

計算してみる

>>> 1 + 2
3

`1 + 2` と入力して Enter を押すと、すぐに `3` と返ってきます。Python は電卓として使えます。

変数を使ってみる

>>> a = 1
>>> b = 2
>>> c = a + b
>>> print(c)
3

`a = 1` は「a という名前の箱に 1 を入れる」という操作です。これが変数です。`c = a + b` は「a と b を足した結果を c に入れる」。`print(c)` で c の中身を表示します。

インタラクティブシェル

インタラクティブシェルを終了する

>>> exit()

`exit()` を入力して Enter を押すと、通常のターミナルに戻ります。

コラム|スペースは必要か
`a = 1` や `c = a + b` の「`=`」「`+`」の前後にスペースが入っています。このスペースはスクリプトの実行上は不要ですが、読みやすさのために入れる慣習です。Pythonには PEP 8 というコーディング規約があり、スペースの使い方はここで定められています。詳しく知りたい方は「PEP 8」で検索してみてください。

6-2. .pyファイルに書いて実行する

インタラクティブシェルは試し打ち用です。実際のスクリプトは `.py` という拡張子のファイルに書きます。右のサイドバー「エクスプローラー」の表示「PYTHON_SCRIPTS」の右側の「ファイル作成」アイコンをクリックして、ファイル名を入力します。

新規ファイルの作成

例として `sum100.py` というファイルを作り、以下の内容を書いたとします。一文字ずつ、文字を打ち込んでも良いし、全体をコピー&ペースとしてもかまいません。

# 1から100までの合計を計算するスクリプト
# 「#」で始まる行はコメント。スクリプトの実行には影響しない

total = 0           # 合計を入れる変数。最初は0

for i in range(1, 101):     # iを1から100まで1ずつ増やして繰り返す
    total = total + i       # totalにiを足していく

print(total)        # 結果を表示する

`#` から始まる行はコメントです。スクリプトの実行には影響せず、コードの意味を人間向けに書き添えるためのものです。手打ちの場合は、省略しても大丈夫です。

これをターミナルから実行します。

python sum100.py

ターミナルに `5050` と表示されれば成功です。1から100まで全部足すと5050になります。コメントと空行を除けば実質4行のコードで完結するのが、Pythonのシンプルさです。

Pythonスクリプトの実行

余力のある読者は、1から10000までの計算を行ってみましょう。(答えは、50005000になります。)

これはプログラマーとしての、偉大な第一歩です。たった数行で、人間には面倒な繰り返し計算を一瞬でこなせる。Pythonの応用範囲は無限大で、画像処理・データ分析・Web操作・AI連携まで、ここから先はどこへでも行けます。「もっとやってみたい」と思えたなら、すでにその入り口に立っています。


環境構築、完了です

これで Python スクリプトを動かす準備が整いました。

環境構築は最初の一回だけです。一度できれば、次からは「VS Code を開いてスクリプトを実行する」だけです。

次のステップとして、以下の記事がおすすめです。

  • FCPのタイムラインからYouTubeチャプターを自動生成する(Pythonスクリプトを実際に動かす体験)※公開後にリンクを追加します

  • FCP自動化バイブル(有料記事・環境構築済みの方はすぐ使える):https://note.com/mikai_daichi/n/n9092ef2ed990


付録:仮想環境をやり直す方法

「ライブラリの相性が悪くて動かない」「Pythonのバージョンを変えたい」——そんなときは、仮想環境をまるごと作り直すのが最もシンプルな解決方法です。難しい操作は必要ありません。

手順1:仮想環境を削除する

VS Code のターミナルで、プロジェクトフォルダにいる状態で以下を実行します。

rm -rf .venv

`.venv` フォルダが丸ごと削除されます。これで仮想環境はまっさらな状態に戻ります。スクリプト本体(`.py` ファイル)には影響しません。

手順2:必要なPythonバージョンを用意する

バージョンを変えたい場合は、Homebrew で目的のバージョンをインストールします。

brew install python@3.12

`@` の後にバージョン番号を指定します。すでにインストール済みのバージョンであればこの手順は不要です。

手順3:仮想環境を再作成する

Step 5 と同じ手順で仮想環境を作り直します。

  1. `Command + Shift + P` でコマンドパレットを開く

  2. Python: 環境の作成 (Create Environment)」を選択する

  3. Venv」を選択する

  4. インタープリターの一覧から、使いたいバージョンを選択する

  5. もし。requirements.txt を選ぶ画面が表示されたら、チェックを入れる

ここがポイントです。手順2 で新しいバージョンをインストールした場合、一覧にそのバージョンが追加されています。目的のバージョンを選んでください。

「OK」を押せば、新しい `.venv` が作成されます。あとは必要なパッケージを `pip install` で再インストールすれば完了です。

コラム|仮想環境は使い捨てでいい
仮想環境は気軽に作り直して大丈夫です。壊れたら捨てて作り直す、が正しい使い方です。大事なのはスクリプト本体(`.py` ファイル)であって、仮想環境は何度でも再現できます。「環境が壊れた」と思ったら、まず `.venv` を削除してやり直す。これを覚えておくと、環境構築のトラブルの大半は解決できます。


付録:tkinter が動かない場合の環境変数設定

`python3 -c "import tkinter; print('OK')"` を実行したときに `ModuleNotFoundError` が出た場合は、`python-tk@3.12` が Python と自動で紐付いていない状態です。以下の手順で環境変数を設定します。

手順1:インストール先のパスを確認する

Homebrew が python-tk をインストールした場所を確認します。

brew --prefix python-tk@3.12

`/opt/homebrew/opt/python-tk@3.12` のようなパスが表示されます。

手順2:環境変数を設定する

シェルの設定ファイル(`.zshrc`)に環境変数を追記します。以下のコマンドの `/opt/homebrew/opt/python-tk@3.12` の部分を、手順1で確認したパスに置き換えて実行してください。

echo 'export PYTHONPATH="/opt/homebrew/opt/python-tk@3.12/lib/python3.12/site-packages:$PYTHONPATH"' >> ~/.zshrc
source ~/.zshrc

手順3:動作を確認する

再度、確認コマンドを実行します。

python3 -c "import tkinter; print('OK')"

`OK` と表示されれば完了です。

いいなと思ったら応援しよう!