pip / python: normal site paketleri yazılamaz


11

Yeni bir Macbook'um var - bir kullanıcı yükledi ve sonra yeni bir kullanıcı (benim) yükledim, yönetici ayrıcalıkları verdim ve eskisini sildim. OS Catalina'dayım.

Kurulumdan bu yana çeşitli izin sorunları yaşıyorum. VSCode, Jupyter Notebook'u bulamıyor, pippaketleri şu adreste kuruyor ~/Library/Python/3.7/site-packages.

Yaptığımda which python3anladım usr/bin/python3. Ne zaman pip3 install <package>alırım: Defaulting to user installation because normal site-packages is not writeableVe sonra zaten yüklendiğini söylüyor, ancak bunu yaptığımda erişemiyorum import <package>.

Bunun bir izin sorunu pipolduğu, "temel" python'a pythonyüklenemediği ve yüklediğim şeyi bulamadıkları açık görünüyor ~/Library/Python/3.7/site-packages.

İşletim sistemini yeniden yüklemeyi denedim, ancak temiz bir yükleme yapmadım, hiçbir şey değiştirmedi. Neyi kaçırıyorum? İzinleri tam olarak nasıl düzeltebilirim? Paketlerin nereye yüklenmesini istiyorum ( venvemin, ancak bazı paketler genel istiyorum (gibi jupyter).

Teşekkürler


Ben de bu sorunu yaşıyorum. Python 2.7 desteğinin sonu ile ilgili olup olmadığını merak ediyorum
Chris Dutrow

Aynı sorunu yaşıyorum
Mahyar Maleki

1
Doğru kullandığınızdan emin misiniz pip? Çok daha güvenli kullanırsanız ne olur python -m pip install ....?
Tom de Geus

@TomdeGeus: python3 -m pip install ...Bu durumda, ama evet, Python'un birden fazla sürümü olduğunda pip, "exec module" yaklaşımı ile çağırmak çok daha güvenlidir , bu yüzden beklenen Python yürütülebilir dosyasını kullandığınızı bilirsiniz.
ShadowRanger

Bunu düzeltmek için python3'ü (daha önce demleme ile kurulmuş) kaldırıp python3'ü yüklemek için pyenv'i kullandım. Şimdi hepsi işe yarıyor. Bu kılavuzu takip ettiniz: opensource.com/article/19/5/python-3-default-mac (son bölüme atla)
Arseny Levin

Yanıtlar:


2

Sistem tarafından sağlanan Python'u doğrudan kullanmamak en iyisidir. İşletim sistemini deneyimlediğiniz gibi istenmeyen şekillerde değiştirebileceğinden, bunu yalnız bırakın.

En iyi uygulama, kendi Python sürümlerinizi yapılandırmak ve virtualenv(Python 2 için) veya venv(Python 3 için ) kullanarak proje başına yönetmektir . Bu, sistem tarafından sağlanan Python sürümüne olan tüm bağımlılığı ortadan kaldırır ve ayrıca her bir projeyi makinedeki diğer projelerden yalıtır.

Gerekirse her projenin farklı bir Python noktası sürümü olabilir ve kendi site_packagesdizinini alır, böylece pip-yüklü kütüphaneler projeye göre farklı sürümlere sahip olabilir. Bu yaklaşım önemli bir sorun önleyicidir.


0

Aynı sorunu Debian 9.12'nin yeni yüklemesinde de vardı. Sunucumu yeniden başlatmak sorunu çözdü.

Sitemizi kullandığınızda şunları okuyup anladığınızı kabul etmiş olursunuz: Çerez Politikası ve Gizlilik Politikası.
Licensed under cc by-sa 3.0 with attribution required.