この質問のさまざまな側面に関する多くの投稿がありますが、すべてをまとめた投稿は見たことがありません。
最初の主観的な声明:Python言語を操作するときに経験する単純さは、インタープリターの外に出てデプロイメントの問題に取り組み始めると、バラバラになってしまうようです。同じマシン上に複数のバージョンのPythonを配置するのに最適な方法はありますか?パッケージはどこにインストールする必要がありますか?Disutils vs. setuptools vs. pipなど。デプロイメントに関しては、PythonのZenがかなりひどく悪用されているようです。Windowsでの「DLL地獄」体験の不気味な反響を感じています。
専門家は、これらの質問に関するある程度のベストプラクティスに同意していますか?
同じマシンで複数のバージョンのPythonを実行していますか?それらが共存できることをどのように確信していますか?新しいバージョンは、以前のバージョンに依存する他のプロセス(たとえば、OSベンダーによって提供されるスクリプト)の仮定を破ることはありませんか?これは安全ですか?virtualenvで十分ですか?
ローカルファイルシステム上のPython環境のさまざまなコンポーネント(サードパーティパッケージを含む)の場所の最良の選択は何ですか?信頼できる多くの異なるバージョンのUnixとWindowsOSの場所の間には、厳密または大まかな対応関係がありますか?
そして、沼地の最も暗いコーナー-どのインストールツール(setuptools、distutils、pipなど)を使用し、ファイルの場所、Python仮想環境、Pythonパスなどの選択でうまく機能しますか?
これらは難しい質問のように聞こえます。経験豊富なPythonistasが、これらの課題に対する標準的なアプローチ(または2つ)を定義したことを願っています。自信を持って使用できるシステムとして「一緒にぶら下がっている」(別個の無関係なツールのように感じない)アプローチは、非常に役立ちます。