Pip en son sürümüne nasıl yükseltilir?


51

get-pip.pyArdından pip freezehata atarsa pip kullanarak yükledim

Exception:
Traceback (most recent call last):
  File "/usr/lib/python2.7/dist-packages/pip/basecommand.py", line 122, in main
    status = self.run(options, args)
  File "/usr/lib/python2.7/dist-packages/pip/commands/freeze.py", line 74, in run
    req = pip.FrozenRequirement.from_dist(dist, dependency_links, find_tags=find_tags)
  File "/usr/lib/python2.7/dist-packages/pip/__init__.py", line 299, in from_dist
    assert len(specs) == 1 and specs[0][0] == '=='
AssertionError

Storing debug log for failure in /home/simon/.pip/pip.log

Bu yüzden 1.7 kontrol ettim sonuncusu. Adımları takip edersem ve güncellenmiyorsa ... Bana yardım et ...

simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)
simon@simon-OptiPlex-780:~/Nightybuild$ pip install -U pip
Downloading/unpacking pip
  Downloading pip-7.1.2-py2.py3-none-any.whl (1.1MB): 1.1MB downloaded
Installing collected packages: pip
Successfully installed pip
Cleaning up...
simon@simon-OptiPlex-780:~/Nightybuild$ pip --version
pip 1.5.6 from /usr/lib/python2.7/dist-packages (python 2.7)

1
sudo -H pip3 kurulumu - yükseltme pip
moldovean

Yanıtlar:


54

Genellikle hem pip2(= pipvarsayılan olarak) hem de yükseltmek için aşağıdaki komutları çalıştırırım pip3:

sudo -H pip3 install --upgrade pip
sudo -H pip2 install --upgrade pip

Komut pipüzerinde numarasız tepki vermek istediğiniz sürümünü (Python 2 veya 3 için) yükseltdiğinizden emin olmalısınız .

Ayrıca, bunun eski paketlenmiş sürümleri apt-getveya başka bir paket yöneticisi tarafından yüklenenleri sakladığını , ancak sistem paketleriyle ilgisi olmayan yeni sürümler eklediğini lütfen unutmayın . pipMontajlı paketler tercih edilecektir, ancak kaldırmak olmamalıdır apt-getpaket yöneticisi herhangi biliyoruz çünkü, ya montajlı olanları pipsürümü aksi yüklenir.


3
Eve yerleşmek neden önemlidir sudo -H?
Léo Léopold Hertz 준영

11
@Masi Çünkü pipindirilen dosyaları önbelleklemek için bir yere yazmak istiyor. Geçerli kullanıcının ana dizininin bir alt klasörüne yerleştirmek için uygulanır. Eğer çalıştırmadan çalıştırıyorsanız -H, şu anda ayarlanmış olan ana dizinin (normal kullanıcı), çalıştığı kullanıcı ile eşleşmediğini tespit ettiğinden şikayet edecektir (root). Dosyaları ana dizininizde yazmış olsaydı, root'a ait olurdu ve artık normal kullanıcı olarak sizin için erişilemezdi. Bu nedenle, bu durumda dosyaları önbelleğe almaz. Algıladığı ve sizi uyardığı -Hgibi atlamak için korkunç değil pip.
Byte Commander

1
Neden her iki pipkomut da komutun üzerine yazıyor? Yükseltdiğimde sadece komutu pip2yükseltmiyor . pip2pip
Yep_It_Me

@ Yep_It's_Me bunun nedeni pip, hangi python sürümünü aradığınıza bağlı olmasıdır. ve bu yüzden komutları pip2& pip3pip'i güncellemek için uygun python sürümünü çağırıyor. bu mantıklı mı?
JayRizzo

27

Bence

pip install --upgrade pip

komut artık düzgün çalışmıyor. Doğru komut şöyle olmalıdır:

  • Python 3 için:

    python3 -m pip install --upgrade pip
  • Python 2 için:

    python2 -m pip install --upgrade pip

Gg @ david-foerster
JayRizzo

Linux'ta, sadece kullanın pip install -U pip(bkz. Yükseltme
pipi

1
Pip'i kökten (Docker görüntüsünde) güncellerken sorun yaşadım ve bu bir çekicilik gibi çalıştı.
Cristian Ramon-Cortes

Linux nane bir cazibe gibi çalıştı
HelloWorld

5

Bu web sitesine gidin https://pypi.python.org/pypi/pip

kaynak bağlantıyı kopyala (ya da) indir (biter .tar.gz)

9.0.1 için bağlantı https://pypi.python.org/pypi?:action=show_md5&digest=35f01da33009719497f01a4ba69d63c9 şeklindedir.

yükleme prosedürü

wget //link goes here
tar -xzvf pip-9.0.1.tar.gz
cd pip-9.0.1
sudo python3 setup.py install

sürüm en son sürüme değiştirilmelidir ve bağlantı en son sürüme ait bağlantıyla güncellenebilir.

bu çalışmalı


bu, benim için çalışan tek şey, çünkü her şey sunucuda bir bağlantıya ihtiyaç duyuyor, yine aynı hatayla başarısız oluyor.
Alok Rajasukumaran


1

Ben bunu bekliyorsanız ne aşağıda açıklıyorum olduğunu belirtmekte yarar olduğunu düşünüyorum pip Python 2 ile işaret etmek PIP3 Python 3'e sana PIP3 yükselttiğinizde, o da pip komutu olarak devraldı çünkü bu söz nedeni işaret etmek iyi. Bunun nedeni, varsayılan tarafından biraz garip kongre olan piton 2.x için noktaları ve python3 3.x için puan Söyleniyor ki...

En son python 2.x pip ve python 3.x pip3 sürümlerinin aynı makinede bir arada bulunmasını istiyorsanız (2.x için pip ve 3.x için pip3 kullanarak), aşağıdakileri yapmanız gerekir:

sudo apt-get install python-pip python3-pip --yes
sudo python3 -m pip install pip --upgrade --force
sudo python -m pip install pip --upgrade --force # this line associates pip with Python 2

Başkaları tarafından verilen diğer cevaplar, sudo pip3 kurulum pip --upgrade komutunu çalıştırdıktan sonra , python 2.x dizinleri yerine python 3.x dizinlerine pip yükleme komutları ile sonuçlanacağından bahsetmiyor .

Bir kısmı pip3'ü yükseltmemizin sadece pip3'ü bırakmamız gerektiğini düşünüyor (pip -> pip3 olsa bile), ancak orada zaten insanların python 2.x'e yönelttikleri pip'in python gibi işleyeceği beklentisine sahip olma tehlikesi var. Başka bir deyişle, insanlar muhtemelen python 2.x için pip / python kullanmak üzere eğitilmişlerdir, tıpkı python 3.x için pip3 / python3 kullanmak üzere eğitilmişlerdir .


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.