これもメモです。
Macの開発環境を整える
ChatGPTに聞きながら作業しています。わからないところを補足していくために、どこの情報が足りないのかを視覚化するためにメモしています。

これ、変な話、本当に言われた通りにコードコピペして実行すればある程度形になるし、エラー出たらエラーコード貼って聞けば教えてくれるので、「わからなくてもできる」ってのがなかなか危険ですよね。
MacのPython開発環境を整える際に知っておきたいこと
- Pythonのインストール: MacにPythonがプリインストールされている場合がありますが、バージョンが古い場合があります。Pythonの最新版をインストールすることをお勧めします。Pythonの公式サイトからダウンロードするか、HomebrewやAnacondaを使用することもできます。
- テキストエディター: テキストエディターは、Pythonコードを編集するために必要です。Macには、デフォルトでTextEditが付属していますが、より高度なエディターを使用することをお勧めします。例えば、Visual Studio Code、Sublime Text、PyCharm、Atomなどがあります。
- パッケージマネージャー: Pythonには多くのパッケージがありますが、必要なパッケージを手動でインストールするのは手間がかかります。パッケージマネージャーを使用することで、必要なパッケージを簡単にインストールできます。例えば、pipを使用することができます。
- 仮想環境: Pythonの仮想環境を作成することで、異なるプロジェクトで異なるバージョンのパッケージを使用できます。これにより、パッケージのバージョン間の競合を回避し、依存関係の問題を解決することができます。仮想環境を作成するには、仮想環境モジュールを使用することができます。
- デバッグツール: Pythonのデバッグには、デバッグツールを使用することができます。例えば、pdb(Pythonデバッガー)、ipdb、PyCharmのデバッガーなどがあります。これらのツールを使用することで、コードの実行中に問題を特定して修正することができます。
HomebrewやAnacondaって何?
Homebrewとは、Mac OS向けのパッケージ管理ツールです。これを使用することで、Mac上に必要なソフトウェアやツールを簡単にインストールできます。Homebrewは、ターミナルを使用してインストールやアップデートを行います。また、依存関係の解決を自動的に行ってくれるため、手動でソフトウェアをインストールするよりも簡単に作業できます。
Anacondaは、Pythonの科学技術コンピューティング用の配布物です。これには、Python本体に加えて、多数の科学技術関連のライブラリやツールが含まれています。Anacondaには、Jupyter NotebookやSpyderなどの開発環境が付属しており、データ分析や機械学習のための環境を簡単にセットアップできます。また、独自のパッケージ管理システムであるcondaを使用することで、必要なライブラリを簡単にインストールできます。Anacondaは、Windows、Mac OS、Linuxなど、複数のプラットフォームで利用できます。
テキストエディターとは?
テキストエディターとは、プログラミング言語のコードや、ドキュメントファイルのような、プレーンテキスト形式のファイルを編集するためのソフトウェアです。テキストエディターは、一般的に、機能が限定され、シンプルなインターフェースを持ちます。それに対して、ワープロやオフィススイートなどの、より高度なソフトウェアとは異なります。
テキストエディターは、プログラマーやWeb開発者、作家やジャーナリスト、編集者など、さまざまな分野の人々にとって、必要不可欠なツールです。テキストエディターには、シンタックスハイライト、自動インデント、自動補完、コード折り畳みなど、プログラミング言語の編集を支援するための機能が多数含まれています。また、一般的にテキストエディターは、プラットフォームに依存しないため、Windows、Mac OS、Linuxなど、さまざまなオペレーティングシステムで使用することができます。例えば、Sublime Text、Visual Studio Code、Atom、Emacs、Vimなどが一般的なテキストエディターの例です。
パッケージマネジャーとは
パッケージマネージャーとは、ソフトウェアのインストールやアップデート、依存関係の管理などを自動化するツールです。パッケージマネージャーは、複数のパッケージを一元管理することができ、必要に応じて必要なパッケージを自動的にダウンロードしてインストールすることができます。
パッケージマネージャーは、特定のプラットフォームやオペレーティングシステム向けに開発されています。例えば、Mac OS向けにはHomebrewやMacPorts、Linux向けにはAPTやYUMなどのパッケージマネージャーが存在します。
Pythonには、pipと呼ばれるパッケージマネージャーが用意されています。pipはPythonパッケージのインストール、アンインストール、アップグレードなどを行うことができます。pipを使用することで、依存関係を自動的に解決し、必要なパッケージを簡単にインストールできます。
パッケージマネージャーは、特定の言語やフレームワークに特化したものもあります。例えば、Node.jsの場合には、npmというパッケージマネージャーがあります。Rubyの場合には、gemというパッケージマネージャーがあります。これらのパッケージマネージャーを使用することで、特定の言語やフレームワーク向けのパッケージを簡単にインストールできます。
全部Homebrewじゃダメなの?
pipとHomebrewは、異なる種類のパッケージマネージャーです。
pipはPython向けのパッケージマネージャーで、Pythonパッケージのインストールやアンインストール、アップグレードなどを行うことができます。pipはPython本体に標準で同梱されており、Pythonプログラミングで必要とされるパッケージをインストールするために使用されます。
一方、HomebrewはMac OS向けのパッケージマネージャーで、Mac OS上で動作するソフトウェアのインストールやアップグレード、依存関係の解決などを行うことができます。Homebrewは、Pythonパッケージのインストールやアップグレードにも使用できますが、そのためにはHomebrewでPythonをインストールする必要があります。
つまり、pipとHomebrewはそれぞれ異なる目的で使用されるパッケージマネージャーであり、対象とするパッケージも異なります。pipはPythonパッケージを管理するために使用され、HomebrewはMac OS上で動作するソフトウェアを管理するために使用されます。
仮想環境モジュールとはなに?
仮想環境モジュールは、Pythonのライブラリの1つで、異なるPythonプロジェクトで使用される依存関係やパッケージのバージョンを分離することができる、Pythonの仮想環境を作成するためのツールです。
Pythonでは、あるプロジェクトで使用されるパッケージのバージョンが、別のプロジェクトで使用されるパッケージのバージョンと競合することがあります。このような問題を解決するために、Pythonの仮想環境を使用することが推奨されています。
仮想環境モジュールを使用することで、異なるPythonプロジェクトで必要なパッケージのバージョンを分離し、競合を回避することができます。また、Pythonの仮想環境を作成することで、異なるバージョンのPythonを使用することもできます。
Pythonには、標準で仮想環境を作成するためのvenvモジュールが用意されています。venvを使用することで、プロジェクトごとに仮想環境を作成することができます。他にも、仮想環境を管理するためのツールとして、Anacondaに含まれるconda、virtualenv、pipenvなどがあります。
Pythonをインストールする
MacでPythonコードを実行するための開発環境を整えるには、以下の手順を実行してください。
- Pythonのインストール(Pythonが既にインストールされている場合はスキップ)
Macでは、デフォルトでPython 2.7がインストールされていますが、このコードはPython 3.xで実行することをお勧めします。
Homebrewをインストールする
Python 3.xをインストールするには、Homebrewを使ってインストールする方法が簡単です。Homebrewがまだインストールされていない場合は、以下のコマンドでインストールします。
bashCopy code/bin/bash -c "$(curl -fsSL https://raw.githubusercontent.com/Homebrew/install/HEAD/install.sh)"
Homebrewがインストールされたら、以下のコマンドでPython 3.xをインストールします。
Copy codebrew install python
pip
を使って必要なライブラリをインストール
Pythonのパッケージ管理ツールであるpip
を使って、必要なライブラリをインストールします。まず、以下のコマンドでpip
が最新バージョンであることを確認します。
cssCopy codepip3 install --upgrade pip
Homebrewとは
Homebrewは、macOS向けのパッケージ管理システムです。Homebrewを使うと、ターミナルからコマンドを使って簡単にソフトウェアパッケージをインストール、アップデート、アンインストールすることができます。
Homebrewは、オープンソースで開発されており、Rubyのライブラリを利用して実装されています。Homebrewを使うことで、macOSでよく使われるソフトウェアやライブラリを手軽にインストールすることができ、開発者やシステム管理者にとって非常に便利なツールとなっています。
pipとは
pipは、Pythonのパッケージ管理ツールです。Pythonのモジュールやライブラリをインストール、アップデート、アンインストールすることができます。
Pythonのパッケージは、通常、複数のファイルやディレクトリから構成されており、必要なライブラリを手動でインストールするのは煩雑な作業です。pipを使用することで、コマンドラインから簡単に必要なパッケージをインストールすることができます。
pipは、Python 2.7.9以降、およびPython 3.4以降には標準で同梱されています。pipのコマンドは、ターミナルやコマンドプロンプトで使います。例えば、以下のようにしてパッケージをインストールすることができます。
Copy codepip install パッケージ名
pipは、Pythonプログラムで必要なライブラリを管理する際に非常に便利なツールです。また、多くのPythonプロジェクトがpipを利用して、必要なパッケージの依存関係を管理しています。
どこに保存されるの?
pipでインストールされたPythonパッケージは、Pythonのsite-packagesディレクトリに保存されます。site-packagesディレクトリは、Pythonのライブラリやパッケージが格納される場所で、Pythonの標準ライブラリもここに保存されています。
具体的には、Pythonのsite-packagesディレクトリは、以下の場所にあります。
- macOSおよびLinux:/usr/local/lib/pythonX.Y/site-packages/ (X.YはPythonのバージョンを表します)
- Windows:C:\PythonX.Y\Lib\site-packages
(X.YはPythonのバージョンを表します)
なお、Pythonのsite-packagesディレクトリは、pipでインストールされたパッケージだけでなく、手動でインストールしたパッケージも含まれます。また、Pythonのsite-packagesディレクトリには、init.pyという名前の空ファイルが自動的に生成されるため、Pythonがsite-packagesディレクトリをパッケージの格納場所として認識することができます。
任意のライブラリをインストールする
次に、BeautifulSoup
とrequests
ライブラリをインストールします。
Copy codepip3 install beautifulsoup4 requests
これで、Pythonコードを実行するための開発環境が整いました。
他に、どんなライブラリをインストールすることになる?
Pythonには、多くの便利なライブラリがあります。以下は、一般的に使われるおすすめのPythonライブラリの一部です。
- NumPy: 数値計算に特化したライブラリで、高速で効率的な多次元配列を扱うことができます。
- pandas: データ解析に特化したライブラリで、表形式のデータを効率的に扱うことができます。
- Matplotlib: データの可視化に特化したライブラリで、グラフやチャートを作成することができます。
- requests: HTTPリクエストを簡単に送信することができるライブラリで、WebスクレイピングやAPIの取得に役立ちます。
- BeautifulSoup: HTMLやXMLなどの文書からデータを抽出することができるライブラリで、Webスクレイピングに便利です。
- Scikit-learn: 機械学習に特化したライブラリで、機械学習のモデルを簡単に構築することができます。
- TensorFlow: ニューラルネットワークの構築に特化したライブラリで、深層学習モデルを構築することができます。
- Pygame: ゲーム開発に特化したライブラリで、Pythonでゲームを作成することができます。
これらのライブラリは、Pythonプログラミングにおいて非常に便利であり、様々なプロジェクトで活用されています。
テキストエディタでコードを作成する
- Pythonコードの実行
Pythonコードをテキストエディタ(例えば、Visual Studio CodeやAtomなど)で作成し、.py
拡張子を持つファイル(例えば、main.py
)として保存します。
テキストエディタの選び方
テキストエディターを選ぶ際のポイントは、以下のようなものがあります。
- 拡張機能の豊富さ: テキストエディターには、多数のプラグインや拡張機能が存在します。それぞれのエディターがどのような拡張機能を提供しているかを調べることで、自分に合ったエディターを選択できます。
- カスタマイズ性: エディターのカスタマイズ性が高いかどうかも重要なポイントです。特に、キーボードショートカットやカラースキームを好みに合わせて変更できると便利です。
- インターフェース: エディターのインターフェースも重要です。自分にとってわかりやすく、使いやすいものを選ぶことが大切です。
- パフォーマンス: エディターの起動速度や動作速度も、作業効率に大きな影響を与えます。パフォーマンスが高く、快適に作業ができるエディターを選ぶことが望ましいでしょう。
以下に、いくつかの一般的なテキストエディターの特徴、メリット、デメリットをまとめました。
テキストエディター | 特徴 | メリット | デメリット |
---|---|---|---|
Sublime Text | 豊富なプラグイン、高速、機能豊富 | 高速で起動・動作、多数の拡張機能が利用可能、軽量 | 商用ソフトウェアであるため、一部の機能が有料 |
Visual Studio Code | 拡張機能が豊富、Git統合機能が優れている | 高速で起動・動作、多数の拡張機能が利用可能、無料 | 起動時に重い |
Atom | オープンソースで開発され、多数のプラグインがある | オープンソースで無料、豊富な拡張機能が利用可能 | 起動が遅く、重い |
Emacs | カスタマイズ性が高く、プログラミング言語の編集に特化している | 強力なカスタマイズ性があり、様々な言語に対応している | 学習コストが高く、初心者には扱いにくい |
Vim | キーボード | – | – |
ターミナルでPythonコードを実行する
次に、ターミナルを開いて、ファイルが保存されているディレクトリに移動します。以下のコマンドでPythonコードを実行できます。
css
python3 main.py
これで、Pythonコードが実行され、結果がターミナルに表示されます。必要に応じてコードを編集し、再度実行して結果を確認してください。
仮想環境での実行
Pythonのプロジェクトごとに仮想環境を作成することをおすすめします。仮想環境を作成することで、プロジェクトごとに必要なパッケージを管理することができます。仮想環境を作成するための方法については、先程回答した仮想環境モジュールの質問を参照してください。
そのほか、Mac構築のための基礎知識
いろいろ調べたことを雑多に並べておきます。
そもそもターミナルって何なのですか?
ターミナルは、コマンドラインインターフェイスを提供するアプリケーションです。ターミナルを使うことで、キーボードでコマンドを入力して、コンピュータに対して命令を出すことができます。
ターミナルは、UNIX系オペレーティングシステムであるmacOSやLinuxに標準で搭載されています。ターミナルを使うことで、GUIベースのアプリケーションでは実現できない高度な操作や、コマンドラインインターフェイスを利用するアプリケーションの実行などが可能になります。
ターミナルを起動すると、シェルと呼ばれるプログラムが実行されます。シェルは、コマンドを入力するとそれを解釈し、コンピュータに対して命令を出すプログラムです。一般的に、macOSやLinuxではbashというシェルが標準で使用されていますが、他にもzshやfishなどのシェルがあります。
ターミナルを使うことで、より高度な操作が可能になる一方で、コマンドラインインターフェイスは初心者には敷居が高いと感じるかもしれません。しかし、ターミナルを使いこなすことで、より効率的な作業が可能になります。
ターミナルで実行してインストールされたものはどこに保存されるのですか?
ターミナルで実行してインストールされたものは、通常、システムのパスの中にインストールされます。
Unix系のOS(macOSやLinuxなど)では、多くの場合、インストールされたファイルは/usr/local/bin
や/usr/bin
といった場所に保存されます。これらのディレクトリには、多くのシステムコマンドやユーティリティが含まれています。
たとえば、brew install
コマンドでインストールされたプログラムやライブラリは、通常、/usr/local/Cellar
ディレクトリに保存されます。また、pip install
コマンドでインストールされたPythonパッケージは、通常、/Library/Python/{バージョン}/site-packages
ディレクトリに保存されます。
Windowsの場合、通常はインストールされたファイルは、C:\Program Files
またはC:\Program Files (x86)
ディレクトリに保存されます。
ただし、プログラムやライブラリによっては、インストール先を指定することができます。また、一部のアプリケーションは、ユーザーのホームディレクトリにインストールされることもあります。したがって、インストール先を確認するには、プログラムのドキュメントを参照するか、インストール時に表示された情報を確認する必要があります。
Google Colabを利用する
Google Colaboratory(通常はColabと呼ばれます)を使用する場合、Pythonの環境設定やライブラリのインストールが容易になります。Colabは、クラウド上で動作するJupyterノートブック環境で、すでにPythonがインストールされており、多くの一般的なライブラリがプリインストールされています。
以下の手順で、Google Colaboratoryを使用してPythonコードを実行する方法を説明します。
- まず、Google Colaboratoryにアクセスしてください。Googleアカウントでログインする必要があります。
- ページ上部の「ファイル」メニューから、「新しいノートブック」を選択して新しいColabノートブックを作成します。これにより、新しいノートブックが開かれます。
- 必要なライブラリをインストールします。この質問で提供したコードを実行するには、
BeautifulSoup
とrequests
ライブラリをインストールする必要があります。これらは、Colabでは既にインストールされています。 - セルにPythonコードを記述して実行します。セルにコードを入力し、
Shift + Enter
キーを押すか、セルの左側にある再生ボタンをクリックすることで実行できます。コードの実行結果がセルの下に表示されます。
Google Colaboratoryを使用すると、Pythonのインストールや環境設定に関する作業が大幅に簡略化され、迅速にコードの実行や開発ができます。また、ColabノートブックはGoogleドライブに保存されるため、他のGoogleドライブユーザーと簡単に共有することができます。
Google Colabの特徴と長所・短所
Google Colabは、Googleが提供するオンラインのJupyter Notebook環境です。以下に、Google Colabの特徴、メリット、デメリットをまとめました。
特徴:
- オンライン上で完全に実行されるJupyter Notebook環境であるため、Pythonの実行に必要な環境やライブラリを自分で用意する必要がありません。
- Google Drive上にNotebookを保存することができ、複数のユーザーで共有することができます。
- GPUやTPUを無料で利用できるため、機械学習などの計算資源を必要とするタスクを実行することができます。
- Google ColabはGoogleが提供するサービスであるため、高速かつ信頼性の高いサーバーで実行されます。
メリット:
- 無料で利用できるため、費用をかけずにPythonのコーディングや機械学習の実験ができます。
- Google Driveとの連携が簡単で、Notebookを簡単に保存・共有できます。
- Googleが提供する計算資源を無料で利用できるため、高速かつ大規模な計算を実行できます。
デメリット:
- オンライン上で実行されるため、ネットワークの遅延によって実行速度が低下する場合があります。
- ノートブック環境がオンライン上にあるため、ノートブックを開いている間にインターネット接続が途切れた場合、作業進捗が失われる可能性があります。
- 制限されたハードウェアリソースがあり、長時間の実行ができない場合があります。
以上が、Google Colabの特徴、メリット、デメリットについての概要です。Google Colabは、無料で計算資源を利用できるため、機械学習などの計算資源を必要とするプロジェクトに最適な環境といえます。
Google Colabを使った時の疑問まとめ
Macユーザーはローカル、Colabどっち?
MacユーザーがGoogle Colabを使うか、ローカルに開発環境を整えるかは、その人の状況や目的によって異なります。
Google Colabは、オンライン上でPythonのコードを実行することができ、無料でGPUやTPUなどの計算資源を利用できるため、機械学習などの計算資源を必要とするプロジェクトに適しています。また、Google Driveとの連携が簡単で、Notebookを簡単に保存・共有できるため、チームでの協業が必要なプロジェクトにも適しています。
一方、ローカルに開発環境を整える場合は、Pythonをローカル環境にインストールする必要がありますが、その場合はオフラインでPythonを利用できるため、ネットワーク遅延や接続の途切れによって実行速度が低下する心配がありません。また、ローカル環境では、自由にパッケージをインストールしたり、開発ツールをカスタマイズしたりすることができます。
したがって、プロジェクトの性質や目的、環境によって、Google Colabを使うべきか、ローカルに開発環境を整えるべきかを判断する必要があります。ただし、Google Colabを使う場合でも、ローカル環境を整えることで、バックアップやセキュリティ対策などを行うことができます。
google colabで実行してみたのですが、ファイルはどこに保存されたのでしょうか?
Google Colabでは、デフォルトで生成されたファイルはランタイムの仮想環境に保存されます。ファイルを確認するには、Colabノートブックの左側にあるファイルエクスプローラ(フォルダのアイコン)を開いてください。そこにoutput.csv
というファイルが表示されるはずです。
ただし、ランタイムが終了すると、仮想環境に保存されたファイルは削除されます。ファイルを永続的に保存するには、Googleドライブにファイルを保存することをお勧めします。
以下の手順で、Googleドライブにファイルを保存できます。
- Googleドライブをマウントします。
python
from google.colab import drive
drive.mount('/content/drive')
実行すると、認証コードを入力するように求められます。リンクをクリックし、Googleアカウントを選択して認証コードを取得し、テキストボックスに貼り付けてEnterキーを押してください。
write_to_csv()
関数で、ファイル名をGoogleドライブ内のパスに変更します。
python
write_to_csv(csv_data, '/content/drive/MyDrive/output.csv')
これで、GoogleドライブのMyDrive
フォルダにoutput.csv
ファイルが保存されます。Googleドライブで永続的に保存されたファイルは、ランタイムが終了しても削除されません。
「MacでPython」についての体験談
この項目はChatGPTの出力を待ちながら、考えたことや他の方の意見などを参考にしながら、いろいろなメモを書いておきます。
「MacでPython」できることメモ
これは本当のメモ。
- Python環境を整えることすら面倒だったけど、GPTくんができること教えてくれるとモチベが上がる
- ただ、ChatGPTは情報が少し古いのと間違ったことも教えてくるので、やることの骨組みができたら肉付けはサイトやSNSを併用するくらいで良いかも。
今後やりたいことメモ
こちらもメモ。
- APIを利用できるまでのPython基礎編
- ブログ運営に役立ちそうなChatGPTの利用方法
- 情報収集した内容を踏まえてブログ記事に投稿する手順
- 正規表現を利用した有効な検索方法をChatGPTに生成させる
- 毎日チェックすべき情報をまとめるツール作成(おそらくPython)
- 毎日のやることをChatGPTに相談できる(秘書化)
- WordPressの記事をデータベース化してユーザーに任意の情報を抽出・操作できるサイト構造を目指す
- データ検索機能(キャラ名を入力するとデータテーブルがそれだけになる、的な)
「MacでPython」に関する口コミや評判
SNS情報のメモです。
MacでPythonに関する情報
Twitter検索用のリンクはこちら。
GPTを使ってテーマを設定するだけで、自動で長文原稿を書く方法。
— 入江 慎吾 / AI研究 (@iritec_jp) March 25, 2023
– Pythonのコードを書いて、APIを使ってGPTに文章を書いてもらっている
– ちなみにmacだとPythonは最初からインストールされてるので「pip install openai」したあとに、直接実行することで動く… pic.twitter.com/GoqxxJtPfP
C言語、Python、Javaと有名所はwindowsのほうが絶対いいんよなぁ
— かあああ (@_Mifan___) March 26, 2022
Macをプログラミングで使うのはIOS開発のみだからwindowsで正解
ChatGPTに関する記事リスト
当サイトでひたすらChatGPTに出力させて記事錬成しているリストはこちらになります。
ChatGPTやAIに関する記事リスト
ブログ更新を自動化させるためにChatGPTの使いかたや生成系AIの技術進歩を勉強するために記事を作成しています。
コメント