Pythonをスマートにインストールする方法

Pythonは使いやすく、初心者にも使いやすく、ほぼすべてのアプリケーションで堅牢なソフトウェアを作成するのに十分強力です。ただし、それでも他のソフトウェアと同様にソフトウェアであるため、セットアップと管理が複雑になる可能性があります。

この記事では、Pythonを正しい方法でセットアップする方法、適切なバージョンを選択する方法、複数のバージョンが互いに踏まないようにする方法、および他のすべての鋭いエッジと潜在的な落とし穴を回避する方法について説明します。仕方。

適切なPythonのバージョンとディストリビューションを選択してください

サードパーティのモジュールとの互換性のために、現在のバージョンよりも1つの主要なポイントリビジョンであるPythonバージョンを選択するのが常に最も安全です。

この記事の執筆時点では、Python3.8.1が最新バージョンです。したがって、安全な方法は、Python 3.7の最新の更新(この場合はPython 3.7.6)を使用することです。 Pythonの最新バージョンは、VMやテストマシンなど、制御された方法でいつでも試すことができますが、バージョンを1つ戻すと、一般的なサードパーティのPythonパッケージとの最高の互換性が保証されます。

Pythonも、Linuxとほぼ同じように、さまざまなディストリビューションで提供されます。ただし、Linuxとは異なり、Pythonには、いつでも頼りにできるゴールドスタンダードの「公式」エディションが1つあります。それは、Python SoftwareFoundationがpython.orgで提供しているバージョンです。繰り返しになりますが、これは最も安全で最も広く互換性のあるディストリビューションであり、誰もピッキングのために解雇されることはありません。(他のPythonディストリビューションは、特定のユースケースに対応しているため、後で調査することをお勧めしますが、ここでは考慮しません。)

特にWindowsで行う必要がある重要な選択の1つは、32ビットバージョンと64ビットバージョンのどちらのPythonを使用するかです。次の理由により、最も可能性の高い答えは64ビットです。

  • 最新のオペレーティングシステムのほとんどは、デフォルトで64ビット版のPythonを使用しています。Windowsユーザーは64ビットWindowsで32ビット版のPythonを実行できますが、パフォーマンスがわずかに低下します。 
  • 32ビットPython、および一般的に32ビットアプリは、一度に4GBのメモリにしかアクセスできません。64ビットアプリケーションにはこの制限がないため、Python用の多くのデータ分析および機械学習ツールは64ビットの化身で最適に機能します。一部は64ビットバージョンでのみ使用できます。 

32ビットバージョンのPythonを選択する必要があるのは、32ビットバージョンのWindowsを使用している場合、または32ビットエディションでのみ使用可能なサードパーティのモジュールを使用する必要がある場合のみです。

スマートな方法でWindowsにPythonをインストールする

Pythonは、セットアッププロセスをガイドするインストーラーを使用して、他のアプリケーションとほぼ同じ方法でWindowsにインストールします。

デフォルトでは、Windows用のPythonインストーラーは実行可能ファイルをユーザーのAppDataディレクトリに配置するため、管理者権限は必要ありません。システム上の唯一のユーザーである場合は、Pythonを上位のディレクトリ(例C:\Python3.7)に配置して、見つけやすくすることをお勧めします。Windowsインストーラでは、ターゲットディレクトリを指定できます。

Windows用の適切なPythonインストーラーを選択してください

Python.orgは、Python forWindowsのさまざまな化身を提供しています。すでに説明した32ビット(「x86」)および64ビット(「x86-64」)バージョンに加えて、埋め込み可能なzipファイル、実行可能インストーラー、およびWebベースのインストーラーから選択できます。これらのすべてについては次のとおりです。

  • 実行可能なインストーラは、 Python用のセットアップ・プロセスを実行するだけで.EXEファイルです。これは簡単なデフォルトの選択であり、最も一般的に使用されます。
  • Webベースのインストーラは、それは別途インストールを実行するのに必要なビットをダウンロードすることを除いて、実行可能なインストーラと同じです。これにより、実際のインストーラーのサイズが大幅に削減されますが、もちろんネットワーク接続が必要です。
  • 組み込み可能なzipファイルには、依存関係のない単一のフォルダ内に収まることをPythonランタイムの自己完結型、最小限のコピーです。Pythonアプリを手動で配布する場合や、何かをその場でテストするためにPythonをすばやく1回だけインストールする必要がある場合は、バンドルすると便利です。ただし、埋め込み可能なzipにはpip、フルインストールに付属するその他の便利なツールは含まれていない ため、専門家のみが使用できます。

Windows用のパッケージマネージャーを使用してPythonをインストールする

さらに別のオプションは、Windows用に存在するパッケージ管理システムの1つを使用することです。.NETのパッケージマネージャーであるNuGetは、リポジトリでPythonを提供します。ただし、Pythonは、一般的な使用のためにPythonのスタンドアロンインスタンスをインストールする方法としてではなく、主に.NETアプリケーションのコンポーネントとして使用するために提供されています。Pythonを通常の方法でインストールすると、Pythonインスタンスの管理が容易になる可能性があります。 

より一般的なWindowsパッケージ管理システムであるChocolateyは、Pythonも提供します。Chocolateyは、Pythonインストーラーを実行し、システム内のPython言語ランタイムの存在を追跡するための便利な方法です。したがって、NuGetよりも優れた選択肢です。ただし、同じシステム上でのChocolateyインストールとPythonの通常のインストールを混在させて一致させることは避けるのが最善です。

LinuxにPythonをスマートにインストールする

Linuxディストリビューションは大幅に異なるため、LinuxにPythonをインストールする一般的な方法は、特定のディストリビューションのパッケージマネージャーを使用することです。たとえば、UbuntuとFedoraでは、Pythonをインストールするための手順がまったく異なります。Linux(およびMacOS)では、インストールのターゲットディレクトリは通常事前に決定されており、Pythonのバージョン番号に基づいています(/usr/bin/python3.XLinuxや/usr/local/opt/python/Macなど)。

Linuxパッケージマネージャーの複雑さに対処することを回避する1つの方法は、コンテナー化されたPythonランタイムを使用することです。コンテナーはシステムの他の部分から分離して実行されるため、異なるPythonランタイムが互いのつま先を踏むことを心配する必要はありません。ただし、ワークフローにまだコンテナーが含まれていない場合は、Dockerに慣れるまで時間と労力を費やす必要があります。(Windowsでもコンテナ化されたPythonを使用できることに注意してください。)

asdf-vmという名前のツールもここで役に立ちます。asdf-vmを使用して、Unixライクなシステム(LinuxおよびMacOS)で複数のPythonランタイムを管理できます。また、Node.js、Ruby、Elixir、およびその他の多くの言語でも複数のランタイムを管理できます。したがって、Python以外のバージョンをジャグリングしていることに気付いた場合は、asdf-vmを調べてください。

スマートな方法でMacOSにPythonをインストールする

MacOSは、従来、Pythonのバージョンがインストールされた状態で出荷されていましたが、Python2.7よりも新しいバージョンではありません。これは、Python 3が到着したときに問題を引き起こしました。これは、2つのバージョンがしばしば競合するためです。公式のPythonドキュメントには、この効果に関する注意事項がいくつかありますが、必要なPythonインスタンスに正しいパスを使用していることを確認するよりも詳細な推奨事項は提供されていません。

MacOSでPythonランタイムを管理する一般的な方法は、Homebrewパッケージマネージャーを使用することです。Homebrewは、Pythonやその他のサードパーティのコマンドラインアプリをダウンロード、インストール、管理、削除するための一貫したインターフェースを提供します。

Pythonパッケージをスマートな方法でインストールする

Pythonバージョンの基本インストールを設定したら、パッケージを直接インストールしないくださいpip 。1つのプロジェクトにのみPythonを使用する予定の場合でも、いいえ。プロジェクトディレクトリを設定し、それらにPythonの仮想環境をインストールし、その後、それらの仮想環境にパッケージをインストールします。このようにして、基本インストールはクリーンに保たれます。

仮想環境と依存関係を持つ複数のプロジェクトを管理するための高レベルの方法については、Poetryプロジェクトを調べてください。Poetryは、仮想環境と依存関係を高レベルで管理するためのコマンドラインツールを提供します。

複数のPythonバージョンを並べてインストールする

Pythonのインストールを処理する際の最も難しい問題は、インストールされているPythonのさまざまなバージョンを並べて処理する方法です。ここでは、2つの一般的な経験則が適用されます。

  • 各バージョンは常に異なるディレクトリにインストールしてください。
  • システムパスが、デフォルトで実行するバージョンを最初に指すように構成されていることを確認します。

複数のPythonバージョンを実行することは、プロジェクトごとの仮想環境を支持することを強く主張します。仮想環境がアクティブ化されると、プロジェクトのコンテキスト内のすべてのPythonアクティビティは、適切なバージョンのPythonに自動的に転送されます。 

Windowsユーザーが複数をインストールするときに使用するPythonバージョンを制御する必要がある別のオプションは、pyランチャーアプリです。Pythonのセットアップ中に、pyランチャーをインストールするオプションが提供されます。ランチャーは、特定のスクリプトに使用するPythonのバージョンを(コマンドラインフラグを介して)選択できる小さな実行可能ファイルです。たとえば、pipPython 3.7で実行するには、と入力し py -3.7 -m pipます。

Pythonをスマートな方法でアップグレードする

Pythonのマイナーリビジョンアップグレード(Python3.7.2からPython3.7.3など)は、一般的に十分に簡単です。Windowsでは、インストーラーは既存のバージョンの存在を検出してアップグレードします。LinuxとMacOSでは、インストーラーまたはパッケージマネージャーは通常同じことを行います。

ただし、作成した仮想環境アップグレードする必要があります。自動的にはアップグレードされません。仮想環境でPythonをアップグレードするには、仮想環境ディレクトリに移動して、と入力し venv --upgradeます。繰り返しになりますが、これは、Python3.7.2からPython3.7.3などのマイナーポイントリビジョンのアップグレードでのみ最適に機能することに注意してください。

Python3.7からPython3.8などのメジャーポイントリビジョンアップグレードを実行している場合、最善の策venvは、プロジェクトディレクトリに新しい別個の仮想環境サブディレクトリを作成し、それに依存関係を再インストールして、を使用するように切り替えることです。新しい仮想環境。PythonをサポートするほとんどのIDE(Microsoft Visual Studio Codeなど)は、プロジェクト内の複数の仮想環境を検出し、それらを切り替えることができます。