37

UbuntuマシンにDjangoサイトをデプロイしようとしています。Psycopg2とPILをインストールする必要がありますが、apt-getまたはpipのいずれかを使用してインストールできるようです。2つの方法でインストールすることに違いはありますか?pipを使用すると、仮想環境にインストールできますが、apt-getを使用すると、グローバルPython環境にインストールできます。

4

7 に答える 7

36

あなたはおそらくapt-getの利点をすでに知っているでしょう。自動更新通知、それらのツールを必要とする他のapt-installedパッケージは、それらがインストールされていることを認識します。

pipを使用すると、インストール時に最新バージョンを取得していることがわかり、デフォルト以外のバージョンのPythonにインストールでき、virtualenvにインストールできます。

pipが提供する機能が不要で、APTで利用できない他のPythonパッケージを定期的にインストールする必要がない場合は、APTバージョンを使用してください。

于 2011-07-29T14:39:49.797 に答える
21

この質問に対するほとんどの回答は、以下を使用する利点の1つを見逃していapt-getます。

apt-getプリコンパイルされており、よりもはるかに高速にインストールされますpip

numpy、matplotlib、pandas、およびその他のscipy関連のモジュールをインストールするには、apt-get数秒しかかかりません。pip簡単に10分以上消費できます。

ルートアクセス権があり、少し古いバージョンを気にしない場合apt-getは、高速で心配のない方法です。

于 2014-10-14T05:01:55.333 に答える
5

パッケージマネージャーで何が行われるかは統合テストを受けますが、Pypiで何が行われるかはテストされていないことに注意してください。

Pypiは開発に問題ありません。

本番環境では、Pypiを使用できますが、パッケージマネージャーの内容に常に依存できることがすぐにわかります...

于 2015-07-06T06:47:47.960 に答える
3

一部のOSパッケージマネージャーはパッケージのカスタマイズを行い、パッケージの動作を壊したり変更したりする可能性があるため、常にpipを使用してPythonパッケージをインストールすることをお勧めします。

パッケージをグローバルにインストールする必要がある場合:

$ sudo pip install PACKAGE

そして、 PyPIまたはプロジェクトのリンクからパッケージをダウンロードしようとします。

于 2011-07-31T17:56:05.473 に答える
2

どちらを使用する必要がありますか:apt-getとpipはどちらも成熟したパッケージマネージャーであり、インストール中に他のパッケージ依存関係を自動的にインストールします。誰でも好きなように使うことができます。ただし、特定のバージョンのpython-packageをインストールする必要がある場合、またはパッケージをvirtualenvにインストールする必要がある場合、またはPyPIでのみホストされているパッケージをインストールする必要がある場合。その問題を解決するのに役立つのはpipだけです。それ以外の場合、システム全体の場所にパッケージをインストールしてもかまわない場合は、apt-getとpipのどちらを使用してもかまいません。

于 2019-06-20T14:18:29.237 に答える
1

私はこれについて何かを見つけました。私のubuntuにはPythonバージョン3.6と3.7の両方があります。apt install python3-xxxの場合、xxxは/ usr / lib / python3 / dist-packagesにインストールされますが、pip3はxxxを/usr/local/lib/python3.7(私のデフォルトのpythonバージョン)/dist-packagesにインストールします。また、Pythonをバージョン3.6に変更すると、pip3によってインストールされたxxxは機能しませんでしたが、aptによってインストールされた場合は正常に機能します。

于 2020-03-20T03:27:13.723 に答える
0

名前が異なる場合があります。

sudo apt install libopencv-dev python3-opencv

pip install opencv-python

しかし、時々同じ:

ここに画像の説明を入力してください

于 2021-11-10T02:57:07.223 に答える