como actualizar uma embalagem com o pip?

Qual é a forma de actualizar uma embalagem com o pip? aqueles não funcionam

pip update
pip upgrade

eu sei que esta é uma pergunta simples, mas como não é tão fácil de encontrar (documentação do pip não aparece e as perguntas do excesso de pilha são relevantes, mas não são exatamente sobre isso)

 25
Author: borgr, 2017-11-02

3 answers

O caminho é

sudo pip install [package_name] --upgrade

Ou em resumo

sudo pip install [package_name] -U

sudo irá pedir para introduzir a sua senha de root para confirmar a acção.

Se não tiver uma senha de root (se não for o administrador), provavelmente deverá trabalhar com virtualenv e depois deverá largar a sudo:

pip install [package_name] --upgrade
 40
Author: borgr, 2018-06-30 05:01:38
import subprocess as sbp
import pip
pkgs = eval(str(sbp.run("pip3 list -o --format=json", shell=True,
                         stdout=sbp.PIPE).stdout, encoding='utf-8'))
for pkg in pkgs:
    sbp.run("pip3 install --upgrade " + pkg['name'], shell=True)

Salvar como xx.py
em Seguida, execute o Python3 xx.py
Ambiente: python3.5+ pip10.0+

 2
Author: Fourier, 2018-05-07 05:31:54

Se só quiser actualizar um pacote, consulte a resposta do @borgr. Muitas vezes acho necessário, ou pelo menos agradável, atualizar todos os meus pacotes de uma vez. Atualmente, pip não suporta nativamente essa ação, mas com Sh scripting é simples o suficiente. Você usa pip list, awk (ou cut e tail), e substituição de comandos. A minha linha normal é:

for i in $(pip list -o | awk 'NR > 2 {print $1}'); do sudo pip install -U $i; done

Isto vai pedir a senha de root. Se você não tem acesso a isso, o --user opção de pip ou virtualenv pode ser algo para investigar.

 1
Author: Aiden Woodruff, 2018-09-23 18:33:55