Eu tenho um programa Python que usa YAML. Tentei instalá-lo em um novo servidor usando pip install yaml
e ele retorna o seguinte:
$ sudo pip install yaml
Downloading/unpacking yaml
Could not find any downloads that satisfy the requirement yaml
No distributions at all found for yaml
Storing complete log in /home/pa/.pip/pip.log
Como instalo o pacote yaml para Python? Estou executando o Python 2.7. (SO: Debian Wheezy)
Respostas:
Você pode tentar o recurso de pesquisa no pip,
que procura pacotes no PyPI com yaml na breve descrição. Isso revela vários pacotes, incluindo PyYaml, yamltools e PySyck, entre outros (Observe que os documentos do PySyck recomendam o uso do PyYaml, pois o syck está desatualizado). Agora você sabe um nome de pacote específico, você pode instalá-lo:
Se você deseja instalar em todo o sistema python yaml no Linux, você também pode usar um gerenciador de pacotes, como
aptitude
ouyum
:fonte
PyYAML
não épython-yaml
.pip install pyyaml
Se você não possui o pip, execute
easy_install pip
a instalação do pip, que é o instalador obrigatório do pacote - Por que usar o pip sobre o easy_install? . Se você preferir ficar com o easy_install, entãoeasy_install pyyaml
fonte
Atualização: Atualmente a instalação é feita com o pip, mas o libyaml ainda é necessário para criar a extensão C (no mac):
Método desatualizado :
Para o MacOSX (independentes), o seguinte parece funcionar:
fonte
Se o libyaml não for encontrado ou compilado, o PyYAML poderá ficar sem ele no Mavericks.
fonte
libyaml is not found or a compiler error: forcing --without-libyaml
ao usarsudo pip install PyYAML
. O que devo fazer? Obrigado.Successfully installed PyYAML
. Veja pip-PyYAML para informações completas. Obrigado novamente.Existem três pacotes compatíveis com YAML. Syck (
pip install syck
) que implementa a especificação YAML 1.0 de 2002; PyYAML (pip install pyyaml
) que segue a especificação YAML 1.1 de 2004; e ruamel.yaml, que segue a especificação mais recente (YAML 1.2, de 2009).Você pode instalar o pacote compatível com YAML 1.2 com
pip install ruamel.yaml
ou se estiver executando uma versão moderna do Debian / Ubuntu (ou derivado) com:fonte
Sistemas baseados em Debian:
$ sudo aptitude install python-yaml
ou mais recente para python3
$ sudo aptitude install python3-yaml
fonte
O seguinte comando será baixado
pyyaml
, o que também incluiyaml
fonte
"Deve haver uma - e preferencialmente apenas uma - maneira óbvia de fazer isso". Então, deixe-me adicionar outro. Este é mais como "instalar a partir de fontes" para Debian / Ubuntu, em https://github.com/yaml/pyyaml
Instale o libYAML e seus cabeçalhos:
Faça o download das fontes pyyaml:
Instale a partir de fontes (não se esqueça de ativar seu venv):
fonte
brew install libyaml & pip install pyyaml
, maspython -c 'from yaml import CSafeLoader'
falhavaUse strictyaml vez
Se você tiver o luxo de criar o arquivo yaml por conta própria ou se não precisar de nenhum desses recursos do yaml comum, recomendo usar em
strictyaml
vez do padrãopyyaml
pacote .Em resumo, o yaml padrão tem algumas falhas sérias em termos de segurança, interface e previsibilidade.
strictyaml
é um subconjunto da especificação yaml que não possui esses problemas (e é melhor documentado).Você pode ler mais sobre os problemas com o yaml regular aqui
PARECER:
strictyaml
deve ser a implementação padrão do yaml e a especificação antiga do yaml deve ser obsoleta.fonte
Para mim, a instalação da versão de desenvolvimento do libyaml fez isso.
fonte