Tengo un programa de Python que usa YAML. Intenté instalarlo en un nuevo servidor usando pip install yaml
y devuelve lo siguiente:
$ 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
¿Cómo instalo el paquete yaml para Python? Estoy ejecutando Python 2.7. (SO: Debian Wheezy)
Respuestas:
Puedes probar la función de búsqueda en pip,
que busca paquetes en PyPI con yaml en la breve descripción. Eso revela varios paquetes, incluidos PyYaml, yamltools y PySyck, entre otros ( tenga en cuenta que los documentos de PySyck recomiendan usar PyYaml, ya que syck no está actualizado). Ahora que conoce un nombre de paquete específico, puede instalarlo:
Si desea instalar python yaml en todo el sistema en Linux, también puede usar un administrador de paquetes, como
aptitude
oyum
:fuente
PyYAML
no lo espython-yaml
.pip install pyyaml
Si no tiene pip, ejecute
easy_install pip
para instalar pip, que es el instalador de paquetes de acceso. ¿Por qué usar pip sobre easy_install? . Si prefiere seguir con easy_install, entonceseasy_install pyyaml
fuente
Actualización: hoy en día la instalación se realiza con pip, pero aún se requiere libyaml para construir la extensión C (en mac):
Método anticuado :
Para MacOSX (disidentes), lo siguiente parece funcionar:
fuente
Si no se encuentra o compila libyaml, PyYAML puede hacerlo sin él en Mavericks.
fuente
libyaml is not found or a compiler error: forcing --without-libyaml
al usarsudo pip install PyYAML
. ¿Qué tengo que hacer? Gracias.Successfully installed PyYAML
. Consulte pip-PyYAML para obtener información completa. Gracias de nuevo.Hay tres paquetes compatibles con YAML. Syck (
pip install syck
) que implementa la especificación YAML 1.0 de 2002; PyYAML (pip install pyyaml
) que sigue la especificación YAML 1.1 de 2004; y ruamel.yaml que sigue la última especificación (YAML 1.2, de 2009).Puede instalar el paquete compatible con YAML 1.2 con
pip install ruamel.yaml
o si está ejecutando una versión moderna de Debian / Ubuntu (o derivada) con:fuente
Sistemas basados en Debian:
$ sudo aptitude install python-yaml
o más reciente para python3
$ sudo aptitude install python3-yaml
fuente
se descargará el siguiente comando
pyyaml
, que también incluyeyaml
fuente
"Debería haber una, y preferiblemente solo una, forma obvia de hacerlo". Así que déjame agregar otro. Este es más como "instalar desde fuentes" para Debian / Ubuntu, desde https://github.com/yaml/pyyaml
Instale libYAML y sus encabezados:
Descargue las fuentes pyyaml:
Instalar desde fuentes, (no olvides activar tu venv):
fuente
brew install libyaml & pip install pyyaml
, peropython -c 'from yaml import CSafeLoader'
seguí fallandoUse strictyaml en su lugar
Si tiene el lujo de crear el archivo yaml usted mismo, o si no requiere ninguna de estas características de yaml regular, le recomiendo usar en
strictyaml
lugar delpyyaml
paquete estándar .En resumen, yaml predeterminado tiene algunos defectos serios en términos de seguridad, interfaz y previsibilidad.
strictyaml
es un subconjunto de la especificación yaml que no tiene esos problemas (y está mejor documentado).Puede leer más acerca de los problemas con yaml regular aquí
OPINIÓN:
strictyaml
debe ser la implementación predeterminada de yaml y la antigua especificación de yaml debe estar obsoleta.fuente
Para mí, la instalación de la versión de desarrollo de libyaml lo hizo.
fuente