Soru Pip Doğru dizine kurulmuyor mu?


Sudo pip yüklemesini doğru şekilde kullanamıyorum, bu nedenle aşağıdaki dizine yüklenir:

/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/

böylece python kullanarak modülü içe aktarabilirim

Koştum

sudo pip install scikit-learn --upgrade

Sonuç

Requirement already up-to-date: scikit-learn in /usr/local/lib/python2.7/site-packages
Cleaning up...

Ancak, doğru dizinde değil

Doğru dizine yüklemek için sudo pip yüklemesini nasıl alabilirim?

Ayrıca denedim

sudo pip yükleme

Aşağıdaki mesajı alıyorum

new-host-2:site-packages Chris$ sudo pip install Scrapy
Password:
Requirement already satisfied (use --upgrade to upgrade): Scrapy in /usr/local/lib/python2.7/site-packages
Requirement already satisfied (use --upgrade to upgrade): Twisted>=10.0.0 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): w3lib>=1.8.0 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): queuelib in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): lxml in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): pyOpenSSL in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): cssselect>=0.9 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): six>=1.5.2 in /usr/local/lib/python2.7/site-packages (from Scrapy)
Requirement already satisfied (use --upgrade to upgrade): zope.interface>=3.6.0 in /usr/local/lib/python2.7/site-packages (from Twisted>=10.0.0->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): cryptography>=0.2.1 in /usr/local/lib/python2.7/site-packages (from pyOpenSSL->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): setuptools in /usr/local/lib/python2.7/site-packages (from zope.interface>=3.6.0->Twisted>=10.0.0->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): cffi>=0.8 in /usr/local/lib/python2.7/site-packages (from cryptography>=0.2.1->pyOpenSSL->Scrapy)
Requirement already satisfied (use --upgrade to upgrade): pycparser in /usr/local/lib/python2.7/site-packages (from cffi>=0.8->cryptography>=0.2.1->pyOpenSSL->Scrapy)

Her iki örnek de kurulduğunu ancak doğru olmadığını gösterir. Örneğin, aşağıdaki ithalatı python'da çalıştırdığımda:

import scrapy
---------------------------------------------------------------------------
ImportError                               Traceback (most recent call last)
<ipython-input-6-51c73a18167b> in <module>()
----> 1 import scrapy

ImportError: No module named scrapy

Aşağıdakileri denedim:

sudo ln -s /Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/

21
2017-09-01 14:19


Menşei


İstediğiniz python yüklemesi için pip yüklemeniz gerekir. Yani: muhtemelen 1'den fazla python yüklüyorsunuz ... Framework veya başka biri olarak kurulmuş python'u çalıştırıp çalıştırmadığınızı kontrol edin ve istediğinizden pip kullanın, kurulumun "bin" dizininde olmalısınız. istemek. - danielfranca
Python'u bir çerçeve olarak çalıştırıp çalıştırmadığınızı nasıl kontrol edersiniz? - Chris
"tip python", python'u çalıştırdığınız konumu size verir. Sonra başka bir yere bağlantı olup olmadığını kontrol etmek için "ls -l <python with full path>" yazın. Muhtemelen /Library/Frameworks/Python.framework/Versions/2.7/bin/python adresindeki bir programı çalıştırmak istersiniz. - danielfranca
Teşekkürler - "tip python" dan "/ usr / local / bin / python" aldığımdan kesinlikle haklısınız. Her zaman "/Library/Frameworks/Python.framework/Versions/2.7/lib/python2.7/site-packages/" adresine gitmek için bir veya en azından sudo pip yüklemesini nasıl silebilirim? Başka bir deyişle, istediğim python yüklemesi için nasıl kurulabilir? - Chris
İstediğiniz python'a bir bağlantı oluşturabilirsiniz. Yani: sudo ln -s / usr / bin / python /Library/Frameworks/Python.framework/Versions/2.7/bin/python Ancak, Framework'ten pip çalıştırmanızı öneririm, muhtemelen yol / Kütüphane / Çerçeveler / Python.framework / Sürümler / 2.7 / bin / pip So yazın /Library/Frameworks/Python.framework/Versions/2.7/bin/pip install <lib> - danielfranca


Cevaplar:


Yorumlardan orijinal soruya kadar, Python'un birden çok sürümü yüklü gibi görünüyor ve bu pip sadece yanlış sürüme gidiyor.

Öncelikle, kullandığınız python sürümünü öğrenmek için, sadece yazın which python. Ya görmelisin:

which python
/Library/Frameworks/Python.framework/Versions/2.7/bin/python

python'un doğru sürümüne gidiyorsanız veya:

which python
/usr/bin/python

'Yanlış' versiyonuna gidiyorsanız. Pip'in doğru sürüme geçmesi için önce yolu değiştirmelisiniz:

 export PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin/python:${PATH}

'hangi python' yazarak sizi doğru sonuca ulaştıracaktır. Ardından, pip yükleyin (bu python kurulumu için henüz yüklenmemişse). Son olarak, onu kullanın. Şimdi iyi olmalısın.


23
2017-09-18 07:57



Önerin için teşekkürler! Yine de çözümünüzle ilgili bir sorun yaşıyorum. Yazmaya çalıştım: export PATH = / Library / Frameworks / Python.framework / Versions / 2.7 / bin / python: {PATH}. Bu işe yaramaz. Ben ihracat PATH = / Library / Frameworks / Python.framework / Sürümleri / 2.7 / bin / python yazmayı denedim: {/ Library / Frameworks / Python.framework / Sürümler / 2.7 / lib / python2.7 / site paketleri /}, hangi çalışmaz. Ayrıca, PATH = / Library / Frameworks / Python.framework / Versions / 2.7 / lib / python2.7 / site-packages / dizinlerini de denedim. - Chris
Merhaba Chris. İlk - Orijinal yanıtımda bir tür vardı - "$" işareti kaçırdım export PATH=/Library/Frameworks/Python.framework/Versions/2.7/bin/python:${PATH}. İkincisi - işe yaramadığını söylediğinde - bununla ne demek istiyorsun? Biraz daha spesifik olabilir misin? - Roy2012
Python'un doğru sürümünü pip ile kullandığınızdan emin olmak için "python -m pip" komutunu çalıştırmanın daha kolay olduğunu unutmayın. - rdb
İle güzel çağrı python -m pip hile, bu çok yararlı ... - swill


Windows için bu benim için çalıştı. Nedeni çoklu python kurulumları

  1. Doğru python ile güncelleme yolu
  2. kullanarak pip kaldır python -m pip uninstall pip setuptools
  3. pencereleri yeniden başlat yeniden başlatana kadar çalışmadı

4
2017-08-22 19:25



Python'u düzeltmek için yolu nasıl güncellersiniz - hiquetj


1 - Çalışabilecek bir şey

pip çalıştırılabilir aslında bir Python betiğidir.

Varsayılan olarak (Linux'ta) içerir:

#!/usr/bin/python
# EASY-INSTALL-ENTRY-SCRIPT: 'pip==1.5.6','console_scripts','pip'
__requires__ = 'pip==1.5.6'
import sys
from pkg_resources import load_entry_point

if __name__ == '__main__':
    sys.exit(
        load_entry_point('pip==1.5.6', 'console_scripts', 'pip')()
    )

Yani eğer MacOS'ta aynı olsaydı, pip her zaman kullanır /usr/bin/python.

Ama bu bir varsayılan. İstediğiniz python sürümünü ya dosyayı düzenleyerek ya da açık bir şekilde python kullanarak sağlayabilirsiniz.

Eğer which python döner /usr/bin/python sonra kendi versiyonunu yüklediğinizde bir şeyler ters gitti. Eğer öyleyse /Library/Frameworks/Python.framework/Versions/2.7/bin/pythondoğrudan arayabilirsiniz:

sudo python `which pip` install scikit-learn --upgrade

Bununla birlikte, çalışma şansı yüksek. Nedeni bu sudo tüm ortam değişkenlerini sıfırlıyor. Çalışması için en kolay kullanım:

sudo -E pip install scikit-learn --upgrade

veya

sudo -E python `which pip` install scikit-learn --upgrade

kurulumunuza bağlı olarak.

2 - Ne yapmalısın

pip bir şey olarak düşünülmedi root yürütmeli. Bunu kullanmanın en iyi yolu yerel, root olmayan bir python sürümü kurmaktır. Doğru ortam değişkenlerini ayarlayarak varsayılan olarak kullandığınızdan emin olmalısınız. PATH Linux'ta) ve sonra yükleyin pip olmadan sudo Bu python sürümünü kullanarak.

Kurmanın daha iyi bir yolu olurdu virtualenvKök yüklemenizden

Bu şekilde, root ayrıcalıkları olmadan istediğinizi kurabilir / güncelleyebilir ve neden bir daha asla rahatsız etmeyebilirsiniz. sudo pip çalışmıyor. Ayrıca Pypi'de ne olursa olsun root ayrıcalıklarını sağlamanız kaçınılmazdı ve sistem lib'lerini kendi başınıza karıştırmamanızı garanti ederdi.


2
2017-09-17 14:53



which python benim için döndürür: /opt/local/bin/python (kullanarak yüklendi macports) ve kullanmak istediğim bu. which pip döner /usr/local/bin/pipBu varsayılanla ilişkilendirilir python. Nasıl kurabilirim virtualenv kullanmam için verilen macports-python kullanarak pip Kılavuza göre (docs.python-guide.org/en/latest/dev/virtualenvs)? - Dror


virtualenv senin arkadaşın

Birincil yüklemenize bir paket eklemek istiyorsanız bile, diğer paketlerinizin uyumluluğundan emin olmak için, önce bir sanal ortamda bunu yapmak en iyisidir. Bununla birlikte, virtualenv hakkında bilgi sahibi olursanız, muhtemelen temel kurulumunuza herhangi bir şey yüklemek için hiçbir sebep yok.


2
2017-09-19 00:40





Tamamen katılıyorum, kullanması daha iyi virtualenv Böylece her proje için özel bir ortam ayarlayabilirsiniz. Her proje için farklı bir dünya ve yaptığınız uygulamanın her güncellemesi diğer projelerle etkileşime girmeyeceği için bakım için idealdir.

Burada bir virtualenv özetini bulabilirsiniz kurulum ve ilk adımlar ile ilgili.


1
2017-09-19 13:20



bu bağlantı bozuk - codebox
Eh, yazı iki yıl önceydi. Bu bağlantı da yararlıdır simononsoftware.com/virtualenv-tutorial - Emily


  1. pip indir https://pypi.python.org/pypi/pip (katran)
  2. tar dosyasını sıkıştır
  3. dosyanın dizinine cd
  4. sudo python2.7 setup.py kurulum

0
2018-01-05 13:28





Shebang çizgisini değiştirebilirsin. Bunu her zaman yeni sistemlerde yapıyorum.

Eğer istersen pip Python'un mevcut bir sürümüne yüklemek için sadece shebang hattını pythons yolunun doğru sürümüne güncelleyin.

Örneğin, Python 3'e yüklemek için pip (pip3 değil) değiştirmek için:

#!/usr/bin/python

Kime:

#!/usr/bin/python3

Kullanarak yüklediğiniz herhangi bir modül pip Python değil Python yüklemeniz gerekir.

Ya da yolu değiştirebilirsin.


0
2018-06-16 16:31





Pip versiyonunun python sürümünüzle eşleştiğinden emin olun.

Python sürümünüzü kullanmak için:

python -V

daha sonra doğru pipu takın. Bu durumda intallenmiş olabilirsiniz:

pip-2.5 yükle ...

pip-2.7 kurulumu ...

veya Macports kullananlarınız için sürümünüzü kullanarak eşleştiğinden emin olun.

port seç - pip listesi

sonra kullanmakta olduğunuz aynı python sürümüne geçin.

sudo port select - set pip pip27

Bu yardımcı olur umarım. Sonunda çalışıyor.


-1
2017-08-05 06:17