881

を使用してPythonパッケージをインストールしましたpython setup.py install

どうすればアンインストールできますか?

4

17 に答える 17

1089

注:使用は避けてpython setup.py installくださいpip install .

すべてのファイルを手動で削除する必要があります。また、インストールで手動で行ったその他の作業をすべて元に戻す必要があります。

すべてのファイルのリストがわからない場合は、--recordオプションを使用して再インストールし、これによって生成されるリストを確認できます。

インストールされているファイルのリストを記録するには、次を使用できます。

python setup.py install --record files.txt

アンインストールする場合は、xargsを使用して削除できます。

xargs rm -rf < files.txt

または、Windowsを実行している場合は、Powershellを使用します。

Get-Content files.txt | ForEach-Object {Remove-Item $_ -Recurse -Force}

次に、含まれているディレクトリも削除/Library/Frameworks/Python.framework/Versions/3.7/lib/python3.7/site-packages/my_module-0.1.egg/します(例:。) macOS。ファイルはありませんが、Pythonは空のモジュールをインポートします。

>>> import my_module
>>> my_module.__file__
None

削除されると、Pythonは次のように表示します。

>>> import my_module
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ModuleNotFoundError: No module named 'my_module'
于 2009-10-11T09:12:27.953 に答える
217

私にとっては、以下が主に機能します。

pip がインストールされている。例:

$ easy_install pip

インストールされたパッケージが pip の観点からどのように命名されているかを確認してください。

$ pip freeze

これにより、インストールした (および pip によって検出された) すべてのパッケージの名前が一覧表示されます。名前は長くなる場合があります。その場合は、 と の後に表示されているパッケージの名前だけを使用して#egg=ください。また、ほとんどの場合、バージョン部分を無視することもできます (その後に続くもの==または-)。

次に、パッケージをアンインストールします。

$ pip uninstall package.name.you.have.found

パッケージの削除について確認を求められた場合、あなたは幸運で、パッケージは削除されます。

pip は、pip によってインストールされたすべてのパッケージを検出します。また、easy_install または setup.py を介してインストールされたほとんどのパッケージを検出しますが、まれに失敗する場合があります。

ttr.rdstmcこれは、MS Windows で名前が付けられたパッケージを使用したローカル テストの実際のサンプルです。

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
ttr.utcutils==0.1.1dev

$ python setup.py develop
.....
.....
Finished processing dependencies for ttr.rdstmc==0.0.1dev

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
-e hg+https://vlcinsky@bitbucket.org/vlcinsky/ttr.rdstmc@d61a9922920c508862602f7f39e496f7b99315f0#egg=ttr.rdstmc-dev
ttr.utcutils==0.1.1dev

$ pip uninstall ttr.rdstmc
Uninstalling ttr.rdstmc:
  c:\python27\lib\site-packages\ttr.rdstmc.egg-link
Proceed (y/n)? y
  Successfully uninstalled ttr.rdstmc

$ pip freeze |grep ttr
ttr.aws.s3==0.1.1dev
ttr.aws.utils.s3==0.3.0
ttr.utcutils==0.1.1dev

編集 2015-05-20

上記の内容はすべて適用されますが、現在利用可能な小さな変更があります。

Python 2.7.9 および Python 3.4 に pip をインストールします。

最近の python バージョンには、ensurepipオフライン時でも pip をインストールできるパッケージが付属しています。

$ python -m ensurepip --upgrade

一部のシステム (Debian Jessie など) では、これは利用できません (システムの python インストールが壊れないようにするため)。

grepまたはを使用してfind

上記の例は、インストール済みであることを前提としていますgrep。私は (マシンに MS Windows があった時点で) Linux ユーティリティのセット (grep を含む) をインストールしていました。または、ネイティブの MS Windows を使用するfindか、単にそのフィルタリングを無視して、検出された python パッケージの少し長いリストで名前を見つけます。

于 2012-10-09T10:19:27.150 に答える
48

まず、インストールしたファイルを記録します。以前に実行したことがある場合でも、このコマンドを繰り返すことができますsetup.py install

python setup.py install --record files.txt

アンインストールする場合は、次のことができます。

sudo rm $(cat files.txt)

これは、rm コマンドが空白で区切られた削除するファイルのリストを取得し、インストール レコードがまさにそのようなリストであるためです。

于 2010-10-28T12:00:21.100 に答える
22

これで、python はインストール中にインストールする選択肢を提供pipします (私は Windows を使用していますが、少なくとも python は Windows でそうします!)。Python のインストール中にインストールすることを選択したことを考慮するpipと (デフォルトであるため、実際に選択する必要はありません)、pip既にインストールされています。次に、pipコマンドプロンプトに入力すると、ヘルプが表示されるはずです。必要な使用説明書はそこにあります。たとえばpip list、インストールされているパッケージのリストが表示されます。使用できます

pip uninstall package_name

不要になったパッケージをアンインストールします。詳細はこちら (pip ドキュメント)を参照してください。

于 2015-09-03T17:44:44.787 に答える
8

怠惰な方法:配布パッケージの作成後に最初に再インストールする場合は、Windowsインストールメニュー(Windowsを使用している場合)またはrpmコマンドからアンインストールするだけです。

例えば、

python setup.py bdist_wininst
dist/foo-1.0.win32.exe

(もちろん「foo」は例です)。

于 2009-10-11T09:13:42.333 に答える
6

pythonパッケージディレクトリに移動し、.eggファイルを削除します。例:python 2.5(ubuntu)の場合:/usr/lib/python2.5/site-packages/

Python 2.6(ubuntu)の場合:/usr/local/lib/python2.6/dist-packages/

于 2009-10-11T09:13:35.907 に答える
4

おそらく、代替手段としてこれを行うことができます:-

1) Python のバージョンを取得します -

[linux machine]# python
Python 2.4.3 (#1, Jun 18 2012, 14:38:55) 

-> 上記のコマンドにより、現在の python バージョンである2.4.3が得られます。

2) python のインストールディレクトリを取得 -

[linux machine]# whereis python
python: /usr/bin/python /usr/bin/python2.4 /usr/lib/python2.4 /usr/local/bin/python2.5 /usr/include/python2.4 /usr/share/man/man1/python.1.gz

-> 上記のコマンドから、インストール ディレクトリを取得できます - /usr/lib/python2.4/site-packages

3) ここから、パッケージと python Egg ファイルを削除できます。

[linux machine]# cd /usr/lib/python2.4/site-packages
[linux machine]# rm -rf paramiko-1.12.0-py2.4.egg paramiko-1.7.7.1-py2.4.egg paramiko-1.9.0-py2.4.egg

これは私にとってはうまくいきました..そして、私を悩ませていたパッケージをアンインストールすることができました:)

于 2013-12-26T06:44:14.013 に答える
3

setup.py を開いてパッケージ名を見つけ、pip にアンインストールするように依頼できると思います。

名前が「METADATA」変数で使用可能であると仮定すると、次のようになります。

pip uninstall $(python -c "from setup import METADATA; print METADATA['name']")
于 2015-10-25T03:57:02.433 に答える
1

マーティンが言ったことを拡張して、インストール出力を記録し、少しの bash スクリプトを作成すると、うまくいきます。これが私がすることです...

for i in $(less install.record);
sudo rm $i;
done;

そしてプレスト。アンインストールしました。

于 2009-12-08T18:00:04.663 に答える
0

次のように、bash を使用してコマンドを読み取り、関連ファイルを削除することをお勧めします。

sudo python setup.py install --record files.txt
sudo bash -c "cat files.txt | xargs rm -rf"
于 2013-12-21T14:13:28.340 に答える