چگونه می توان تمام بسته های نصب شده توسط PIP را حذف کرد؟

ساخت وبلاگ

Patelshahrukh حذف پایتون بسته های PIP را حذف نمی کند. لطفاً از انجام این کار خودداری کنید ، زیرا هر دو به احتمال زیاد به روشی که فکر می کنید کار نمی کند ، و بسته به نحوه نصب دوباره پایتون ، می توانید دستگاه خود را در حالت ناپایدار بگذارید که کار بیشتری برای رفع آن باشد.

23 آوریل 2018 در 18:23

این ممکن است برای بسته های نصب شده در حالت توسعه یا حالت قابل ویرایش کمک کند: stackoverflow. com/questions/17346619/…

2 مه 2020 در 16:21

33 پاسخ 33

مرتب شده توسط: تنظیم مجدد به طور پیش فرض 1586

من این قطعه را به عنوان یک راه حل جایگزین پیدا کردم. این یک حذف برازنده تر از کتابخانه ها از بازسازی VirtualEnv است:

یخ PIP |Xargs Pip حذف نصب شده است 

در صورتی که بسته های نصب شده از طریق VCS ، باید آن خطوط را حذف کرده و بسته ها را به صورت دستی حذف کنید (از نظرات زیر بالا رفته است):

یخ PIP |gre p-v "^-e" |Xargs Pip حذف نصب شده است 

اگر بسته هایی را که مستقیماً از GitHub/GitLab نصب شده اید ، نصب کنید ، آنها دارای @ هستند. پسندیدن:

برای دریافت فقط نام بسته ای که برای حذف آن لازم است ، می توانید برش "@" -f1 را اضافه کنید.

یخ PIP |بر ش-d "@" -f1 |Xargs Pip حذف نصب شده است 

دنبال کردن 933 2 2 نشان های طلا 8 8 نشان نقره 16 16 نشان برنز 28 ژوئن 2012 در ساعت 18:32 پاسخ داد Blueberryfields Blueberryfields 44. 3k 27 27 نشان های طلا 88 88 نشان نقره 167 167 نشان های برنز

من این یک راه حل خوب را می دانم ، صرفاً به این دلیل که محیط مجازی را به طور کامل از بین نمی برد - ممکن است به عنوان مثال تغییراتی ایجاد کرده باشم. postactivate که باقی خواهد ماند.

4 ژوئیه 2013 در 8:17

همچنین می توانید از PIP Freeze-Exclude-Edable |Xargs PIP حذف نصب و راه اندازی بسته های VCS بدون استفاده از الگوی GREP

26 ژوئیه 2018 در 21:15 خطا: نیاز نامعتبر: '@' من بسته هایی دارم که از GitLab من نصب شده است. 5 ژوئن 2020 در 12:22

PIP Freeze تمام بسته ها ، از جمله نصب شده در سیستم عامل را لیست می کند. اراده کاربر قادر نیست (و احتمالاً نمی خواهد) آنها را بدون مجوز ریشه حذف کند. Pip Freez e-کاربر برای من کار کرد.

12 ژوئن 2020 در 16:15 لیست پیپ Mryan - -Format = Freeze | Xargs PIP UNINTAL L-Y این کار را برای من انجام داد 23 مارس 2022 در 19:41

این برای همه سیستم های Mac ، Windows و Linux کار خواهد کرد. برای به دست آوردن لیست کلیه بسته های PIP در پرونده مورد نیازدر تمام دستور زیر در محل مورد نیاز. txt).

pip freeze>مورد نیاز. txt 

اکنون برای حذف یک به یک

pip uniNstal l-r الزامات . txt 

اگر می خواهیم همه را یکباره حذف کنیم

pip uninstal l-r الزامات . tx t-y 

اگر در حال کار بر روی یک پروژه موجود هستید که دارای یک پرونده مورد نیاز است. TXT و محیط شما متفاوت است ، به سادگی الزامات را جایگزین کنید. txt را از نمونه های فوق با toberemoved. txt جایگزین کنید. سپس ، هنگامی که مراحل فوق را طی کردید ، می توانید از الزامات استفاده کنید. برای به روزرسانی محیط تمیز اکنون خود.

و برای یک فرمان بدون ایجاد هر پرونده (همانطور که Joeb پیشنهاد کرد).

PIP حذف نص ب-y -r<(pip freeze) 

دنبال کردن در 12 نوامبر 2016 در 18:08 پاسخ داد هارشاد کاواتیا هارشاد کاواتیا 8،219 1 1 نشان طلا 10 10 نشان نقره 19 19 نشان برنز

احتمالاً شایان ذکر است که شما در صورت عدم اطلاع آنها ، مجبور به نوشتن پرونده آنها هستید.:)

18 فوریه 2017 در 0:24

علاوه بر این ، اگر کسی بخواهد تمام بسته ها را حذف کند ، ضمیمه "-y" این کار را انجام می دهد. مثال: pip uniNstal l-r الزامات . tx t-y

9 آوریل 2017 در 0:13 می توانید از PIP unnstal l-y -r استفاده کنید<(pip freeze) to do everything in one go. 8 ژوئن 2017 در 14:21 joeb بله ما می توانیم چنین کاری را انجام دهیم. 9 ژوئن 2017 در 9:28

harshadkavathiya شما می توانید از پرونده دیگری برای ذخیره سازی پیپ ، مانند "فعلی. txt" استفاده کنید ، بنابراین نیازها می تواند به سلامتی دست نخورده بماند

11 مه 2018 در 20:28

من می خواستم این پاسخ را از یک بخش نظر بالا ببرم زیرا این یکی از ظریف ترین راه حل های موضوع است. اعتبار کامل برای این پاسخ به joeb می رود.

PIP حذف نص ب-y -r<(pip freeze) 

این برای من برای استفاده از پوشه بسته بندی بسته های کاربر من در خارج از متن VirtualEnv که بسیاری از پاسخ های فوق از آن استفاده نمی کنند ، بسیار عالی بود.

ویرایش: کسی می داند چگونه این دستور را در یک Makefile کار کند؟

پاداش: نام مستعار

من این را برای راحتی به نمایه Bash خود اضافه می کنم:

alias pipuninstallall = "pip uninstal l-y -r<(pip freeze)" 
پیپونین 

جایگزین برای pipenv

اگر از PIPENV استفاده می کنید ، می توانید اجرا کنید:

PIPENV حذف نص ب-همه 

جایگزین برای شعر

اگر از شعر استفاده می کنید ، اجرا کنید:

شعر env حذ ف-python3. 9 

(توجه داشته باشید که برای مطابقت با نسخه پایتون شما باید شماره نسخه را در آنجا تغییر دهید.)

دنبال کردن در 9 مارس 2018 ساعت 18:51 پاسخ داد تیلور D. Edmiston Taylor D. Edmiston 11. 7K 6 6 نشان های طلا 52 52 نشان نقره 75 75 نشان برنز

من آن را دوست دارم اما در مورد تهی کار نمی کند (اگر هیچ بسته ای نصب نشده باشد ، یخبندان به هیچ وجه نتیجه نمی گیرد و پس از آن ، متأسفانه PIP شکایت می کند).

19 آگوست 2018 در 23:53

هوم خوبشاید بتواند آن را به یک عملکرد BASH پیچیده کند که بررسی کند که آیا خروجی یخبندان PIP خالی نیست یا خیر. من یک راه عالی برای دستیابی به آن نمی بینم در حالی که فرمان را به عنوان یک خط کوتاه کوتاه نگه می دارم.

20 آگوست 2018 در 17:05

SH را به طور پیش فرض از SH استفاده کنید ، اما نحو تعویض<(. ) is a bashism. So you can either use bash -c ". ", or work around by doing a pip freeze | pip uninstall -r /dev/stdin

8 اکتبر 2018 در 23:45

با نوت بوک های لاجورد کار نمی کند: خطا: نمی توان "Bitarray" را حذف کرد. این یک پروژه نصب شده Distutils است و بنابراین ما نمی توانیم به طور دقیق تعیین کنیم که کدام پرونده ها متعلق به آن هستند که فقط منجر به حذف جزئی می شود.

30 آوریل 2020 در 7:03

Seadude در اینجا یک راه حل است که ممکن است کمک کند-stackoverflow. com/questions/49915951/cannot-uninstall-chardet. اگر این کار نکند ، این رویکرد بهترین حدس بعدی من است - github. com/vlachoudis/bcnc/issues/1141. توجه داشته باشید که بسته های ذکر شده متفاوت است ، اما من معتقدم مسئله اساسی ممکن است مشابه باشد.

1 مه 2020 در 15:36

این با جدیدترین کار می کند. من فکر می کنم این کوتاهترین و اعلام کننده ترین روش برای انجام آن است.

virtualen v-clear myenv 

اما چرا فقط VirtualEnV را حذف و بازآفرینی نمی کنیم؟

قوانین ناپذیری. علاوه بر این ، به یاد آوردن همه آن دسته از لوله کشی ها و استفاده از راه حل های دیگر استفاده می شود.

دنبال کردن 26 ژوئیه 2012 در ساعت 15:15 پاسخ داد رابرت مسکال رابرت مسکل 21. 4K 8 8 نشان های طلا 61 61 نشان نقره 85 85 نشان برنز آیا این به طور موثری همانند WipeenV است؟virtualenvwrapper. readthedocs. org/en/latest/… 15 آوریل 2015 ساعت 16:11

در واق ع-به نظر می رسد (از چیزی که من فقط به آن رسیدم) در حالی که wipeenv در حالی که در داخل محیط خطایی را به وجود می آورد و در صورت استفاده در زمینه ساخت PIP نصب و توسعه ، از بین نمی رود ، سعی در استفاده از VirtualEn v-Clear Myenv نمی کندخطایی را پرتاب کرده و هیچ یک از بسته هایی را که قبلاً در محیط نصب کرده اید حذف نمی کند. حداقل این مورد در OSX است. برای اطلاعات بیشتر به bitbucket. org/dhellmann/virtualenvwrapper/issues/211/. ... مراجعه کنید.

4 آگوست 2015 در 6:20 Wipeenv یک نام مستعار است که توسط VirtualEnvWrapper تهیه شده است ، بنابراین همه آن را ندارند. 11 اکتبر 2017 ساعت 17:29

خوب ، این یک نوع ترفند کثیف است ، اما مانند جادو کار می کند. من ترجیح می دهم که همه از pip unnstal l-r الزامات استفاده کنند. tx t-y. این یک تمیز کردن عالی را ایجاد می کند.

9 مارس 2018 در 19:25

پاسخ های دیگری که از لیست PIP یا PIP Freeze استفاده می کنند باید شامل شون د-در غیر این صورت بسته هایی را که در مناطق نام مشترک یافت می شود ، حذف نصب می کند.

بنابراین در اینجا قطعه ای است که من به طور مرتب از آن استفاده می کنم

 یخبندان PI P-محلی |Xargs Pip حذف نصب شده است 

Ref: Pip Freez e-Help

دنبال کردن پاسخ 3 آگوست 2017 در 4:49 نهم 12. 3K 6 6 نشان های طلا 56 56 نشان نقره 81 81 نشان برنز

این کار تا زمانی که به بسته ای که این خطا را ایجاد کرده بود ، کار کرد: خطا: نمی توان "Bitarray" را حذف کرد. این یک پروژه نصب شده Distutils است و بنابراین ما نمی توانیم به طور دقیق تعیین کنیم که کدام پرونده ها متعلق به آن هستند که فقط منجر به حذف جزئی می شود. بشرسپس دیگر نمی توانم ماژول را حذف نصب کنم.

30 آوریل 2020 در 7:02

من آن را با انجام موارد زیر مدیریت کردم:

  1. پرونده مورد نیاز به نام reqs. txt را با لیست بسته های نصب شده ایجاد کنید
pip freeze>reqs. txt 
  1. سپس تمام بسته ها را از reqs. txt حذف نصب کنید
# -y به معنای حذف بسته بدون درخواست تأیید پیپ حذ ف-y -r reqs. txt 

من این روش را دوست دارم ، زیرا شما همیشه در صورت اشتباه ، یک پرونده مورد نیاز PIP دارید که دوباره به آن بپردازید. همچنین قابل تکرار است ، و آن را متقاطع (ویندوز ، لینوکس ، MACOS).

دنبال کردن 29 اکتبر 2019 در ساعت 11:32 پاسخ داد k-dawg k-dawg 2،892 1 1 نشان طلا 34 34 نشان نقره 52 52 نشان برنز

روش 1 (با یخبندان PIP)

یخ PIP |Xargs Pip حذف نصب شده است 

روش 2 (با لیست PIP)

لیست پیپ |AWK '' |Xargs Pip حذف نصب شده است 

روش 3 (با VirtualEnv)

virtualen v-clear myenv 

دنبال کردن 44. 3k 27 27 نشان های طلا 88 88 نشان نقره 167 167 نشان های برنز در 5 ژوئن 2016 در ساعت 13:25 پاسخ داد سوریه سوریا 2،382 2 2 نشان های طلا 26 26 نشان نقره 45 45 نشان برنز

سودو لازم نیست و استفاده از آن بدون توجه دقیق احتمالاً خطرناک است ، زیرا این امر بر راه اندازی دستگاه جهانی تأثیر می گذارد. به عنوان مثال این پاسخ را ببینید: stackoverflow. com/questions/15028648/…

9 ژوئن 2016 در 2:16 روش 2 (لیست PIP) بسیار عالی کار می کند تا زمانی که پیپ را به طور تصادفی خود را حذف کنی د-_- 24 فوریه 2017 در 0:48

روش 2 در مورد من کار نکرد زیرا یک هدر در لیست وجود دارد که باید نادیده گرفته شود. این یکی کار کرد: لیست پیپ |AWK ''|gre p-ve "^پیپ $ |^بسته $ |^---" |Xargs Pip حذف نصب شده است

21 فوریه 2022 در 16:32

در ویندوز اگر مسیر شما به درستی پیکربندی شده باشد ، می توانید استفاده کنید:

pip freeze>Unins && pip uninstal l-y -r unins && del unins 

این باید یک مورد مشابه برای سیستم های مانند یونیکس باشد:

pip freeze>Unins && pip uninstal l-y -r unins && rm unins 

فقط یک هشدار که این کاملاً محکم نیست ، زیرا ممکن است در مواردی مانند "پرونده یافت نشد" اما ممکن است در بعضی موارد کار کند

EDIT: For clarity: unins is an arbitrary file which has data written out to it when this command executes: pip freeze>دائمی

آن پرونده ای که به نوبه خود نوشته شده است ، سپس برای حذف بسته های فوق الذکر با رضایت ضمنی/تأیید قبلی از طریق PIP حذف شد ه-y -r unins استفاده می شود

سرانجام پرونده پس از اتمام حذف می شود.

دنبال کردن در 6 دسامبر 2015 در ساعت 14:01 پاسخ داد ریچارد کنت نیسسیور ریچارد کنت نیسسیور 1،764 17 17 نشان نقره 24 24 نشان برنز

من از گزین ه-USER برای حذف تمام بسته های نصب شده در سایت کاربر استفاده می کنم.

یخبندان PIP 3-کاربر |Xargs PIP3 حذف نصب شده است 

دنبال کردن 4،607 4 4 نشان طلا 40 40 نشان نقره 73 73 نشان برنز در 1 آوریل 2020 در 7:56 پاسخ داد دین دین 491 4 4 نشان نقره 8 8 نشان برنز

من معتقدم که این پاسخ اطلاعات جدیدی را اضافه نمی کند ، من ترجیح می دهم که پاسخ مشابه دیگری را که قبلاً موجود در حال حاضر موجود است مانند این پاسخ پیشنهاد داده ام: stackoverflow. com/a/45475070/11138259

3 آوریل 2020 در ساعت 14:15

اگر از VirtualEnv استفاده می کنید و خطا می کنید: باید حداقل یک نیاز برای حذف نصب ، حذف قسم ت-کاربر را حذف کنید

29 نوامبر 2020 در 20:13

pip3 freeze | xargs pip3 uninstall -y ==> ` PermissionError: [Ero 13] Permission denied: '/usr/local/bin/ap' >'/tmp/pip-uninstall-q9gzbj0d/ap'`

28 فوریه 2021 در 12:48

@sl5net. شاید لازم باشد آن را به عنوان سوپر مصرف کنید. چیزی شبیه Sudo s h-c 'pip3 freeze |XARGS PIP3 حذف نص ب-y '(اضافه شده S H-C و نقل قول ها به این دلیل است که لوله تمایل به بازی خوب با sudo ندارد) یا شما فقط می توانید دستور خود را به عنوان ریشه انجام دهید ، اما من توصیه نمی کنم که این یک عادت عالی برای حضور در آن نیست. گلوله در مورد ریشه باعث می شود که به طور تصادفی سیستم خود را قتل کنید ، به من اعتماد کنید ، تجربه تلخ در اینجا صحبت کنید.

15 ژوئن 2021 در ساعت 13:32 نکته خوب گزین ه-کاربر. از آنجا ک ه-لیست های محلی تمام بسته های نصب شده به صورت محلی را لیست می کند ، نه کاربر. 3 ژانویه در 13:57

برای کاربران ویندوز ، این همان چیزی است که من در Windows PowerShell استفاده می کنم

 PIP UNINSTAL L-Y (PIP Freeze) 

دنبال کردن 23 مارس 2018 در ساعت 12:57 پاسخ داد Benwrk Benwrk 338 2 2 نشان نقره 7 7 نشان برنز

ابتدا تمام بسته ها را به الزامات اضافه کنید.

pip freeze>مورد نیاز. txt 

سپس همه را حذف کنید

pip uniNstal l-y -r الزامات . txt 

دنبال کردن پاسخ 8 ژانویه 2019 در 10:03 شافیک شافیک 5،930 5 5 نشان طلا 35 35 نشان نقره 48 48 نشان برنز

سریعترین راه بازسازی VirtualEnV به طور کامل است. من فرض می کنم که شما یک پرونده مورد نیاز دارید. اگر با تولید مطابقت داشته باشد ، اگر نه:

# On production: pip freeze>reqs. txt # در دستگاه خود: rm $ virtualenv_directory mkdir $ virtualenv_directory pip نص ب-r reqs. txt 

دنبال کردن 10. 7K 6 6 نشان های طلا 50 50 نشان نقره 81 81 نشان برنز 28 ژوئن 2012 در ساعت 15:37 پاسخ داد Ned Batchelder Ned Batchelder 359K 72 72 نشان های طلا 560 560 نشان نقره 655 655 نشان های برنز

Does this even handle the case where there was a editable install (basically a setuptools develop mode install) that created a local .egg-info file that then interfered with the rest of the installation/uninstallation process? Since it's a set of files it doesn't seem to know how to handle their presence, and rather than uninstalling anything it makes a local directory structure under MYENV complete with: `> New python executables in MYENV/bin/python3.4> Also creating executable in MYENV/bin/python>نصب setuptools ، pip ، چرخ. انجام شده است. اما Myenv محیط را مجدداً تنظیم نکرده است!

4 آگوست 2015 در 6:35

wipeenv 

دنبال کردن 16K 14 14 نشان طلا 62 62 نشان نقره 79 79 نشان برنز پاسخ 10 سپتامبر 2016 ساعت 4:50 Zesk Zesk 307 2 2 نشان نقره 6 6 نشان های برنز اگر از VirtualEnvWrapper استفاده می کنید ، WipeenV را تایپ کنید 24 اکتبر 2016 در 19:22

این یک سوال قدیمی است که من می دانم اما من در آن گیر افتادم ، بنابراین برای مرجع آینده می توانید این کار را انجام دهید:

پیپ را حذف کرد [گزینه ها]. PIP [گزینه ها] -r را حذف نصب کنید. 

-r ، -پرونده بازرسی

تمام بسته های ذکر شده در پرونده مورد نیاز را حذف کنید. این گزینه می تواند چندین بار استفاده شود.

از مستندات PIP نسخه 8. 1

دنبال کردن 23 مارس 2016 در ساعت 14:33 پاسخ داد Craicerjack Craicerjack 6،113 2 2 نشان های طلا 31 31 نشان نقره 39 39 نشان برنز

بهترین راه برای حذف همه بسته ها از محیط مجازی.

Windows PowerShell:

pip freeze>Unins ؛PIP UNINS UNINS را حذف کرد. دل اوین 

دستور Windows Prompt:

pip freeze>Unins && pip uninstal l-y -r unins && del unins 

لینوکس:

pip3 freeze>Unins ؛PIP3 UNINS UNINS را حذف کرد. RM Unins 

دنبال کردن در 14 سپتامبر 2022 در ساعت 18:40 پاسخ داد Sathiamoorthy Sathiamoorthy 7،411 9 9 نشان طلا 59 59 نشان نقره 67 67 نشان برنز ویندوز چنین گزینه ای ندارد: -سالهای بدون گزینه اجرا شد اما هیچ بسته ای را حذف نکرد 29 ژانویه در 1:01

flywire این برای من در آراء کار کرد و آرا را ببینید. FYI ، من این سیستم عامل های ویندوز 10 و ویندوز 11 را امتحان کردم.

29 ژانویه در 16:11 این ویندوز نیست بلکه PowerShell است. Windows - CMD: & ، PowerShell :؛ 29 ژانویه در 23:56

(اضافه کردن این به عنوان یک پاسخ ، زیرا من شهرت کافی برای اظهار نظر در مورد پاسخ blueberryfields ندارم)

پاسخ BlueBerryFields خوب کار می کند ، اما در صورت عدم وجود بسته بندی برای حذف نصب ، عدم موفقیت در صورت عدم وجود این "حذف همه" بخشی از یک اسکریپت یا Makefile است). این را می توان با استفاده از نسخه GNU از Xargs با XARG S-R حل کرد:

Pip Freeze-Exclude-Edable |xarg s-r pip uninstal l-y 

-r ،-بدون اجرا-if-mempy

اگر ورودی استاندارد حاوی هیچکسی نیست ، دستور را اجرا نکنید. به طور معمول ، این دستور یک بار اجرا می شود حتی اگر ورودی وجود نداشته باشد. این گزینه پسوند GNU است.

دنبال کردن 5 ژوئیه 2019 در ساعت 11:24 پاسخ داد Thibaut Dubeet Thibaut Dubeet 659 7 7 نشان نقره 7 7 نشان برنز

یخبندان PIP 3-محلی |Xargs PIP3 حذف نصب شده است 

این مورد ممکن است این باشد که فرد باید چندین بار این دستور را اجرا کند تا یک یخبندان خالی PIP3 را بدست آورد.

دنبال کردن در 17 اکتبر 2019 در 18:26 پاسخ داد اوبوتزات اوبوتزات 1،005 17 17 نشان نقره 20 20 نشان برنز این در حال حاضر بسته های قابل ویرایش نصب شده است 21 اکتبر 2022 در 4:22

این ساده ترین راه برای حذف همه بسته های پایتون بود.

از واردات PIP get_installed_distributions از سیستم واردات سیستم عامل برای i در get_installed_distributions (): سیستم ("PIP3 حذف نصب<>- y-Q ". Format (I. Key)) 

دنبال کردن 5،074 6 6 نشان طلا 33 33 نشان نقره 44 44 نشان برنز در 18 ژوئن 2017 در 20:06 پاسخ داد ناشناس 138 ناشناس 138 29 1 1 نشان برنز

راه آسان و محکم متقابل و کار در PIPENV نیز این است:

Pip Freeze Pip را حذف نصب کرد 
pipenv run pip freeze pipenv run pip unnstal l-r نیاز 

اما Piplock یا Pipfile را به روز نمی کنید بنابراین آگاه باشید

دنبال کردن در 11 اکتبر 2019 در 18:10 پاسخ داد مهدی حمزه مهدی 171 1 1 نشان نقره 8 8 نشان های برنز

پشتیبانی از پلتفرم با استفاده از تنها PIP:

#!/usr/bin/env python from sys import stderr from pip.commands.uninstall import UninstallCommand from pip import get_installed_distributions pip_uninstall = UninstallCommand() options, args = pip_uninstall.parse_args([ package.project_name for package in get_installed_distributions() if not package.location.endswith('dist-packages') ]) options.yes = True # Don't confirm before uninstall # set `options.require_venv` to True for virtualenv restriction try: print pip_uninstall.run(options, args) except OSError as e: if e.ero != 13: raise e print>>استرر ، "شما برای حذف این بسته مجوز ندارید. شاید با سودو اجرا کنید؟خروج (13) # استثنائات زیادی را می توان پرتاب کرد ، به عنوان مثال: `installationError` # اگر می خواهید آنها را اداره کنید.< Pan> ناشناس 138 ناشناس 138 
استراتژی ترید...
ما را در سایت استراتژی ترید دنبال می کنید

برچسب : نویسنده : مرجان شیرمحمدی بازدید : 28 تاريخ : جمعه 30 تير 1402 ساعت: 12:21