web-dev-qa-db-fra.com

Comment installer le paquet yaml pour Python?

J'ai un programme Python qui utilise YAML. J'ai tenté de l'installer sur un nouveau serveur à l'aide de pip install yaml.

$ 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

Comment installer le paquet yaml pour Python? J'exécute Python 2.7. (OS: Debian Wheezy)

254
harperville

Vous pouvez essayer la fonction de recherche dans pip, 

$ pip search yaml

qui cherche des paquets dans PyPI avec yaml dans la description courte. Cela révèle divers packages, dont PyYaml, yamltools et PySyck, entre autres (Notez que PySyck docs recommande d'utiliser PyYaml, car syck est obsolète). Maintenant que vous connaissez un nom de paquet spécifique, vous pouvez l'installer:

$ pip install pyyaml

Si vous souhaitez installer python yaml à l’échelle du système sous linux, vous pouvez également utiliser un gestionnaire de paquets, tel que aptitude ou yum:

$ Sudo apt-get install python-yaml
$ Sudo yum install python-yaml
438
Bonlenfum

pip install pyyaml

Si vous n'avez pas pip, exécutez easy_install pip pour installer pip, qui est le programme d'installation à ne pas manquer - Pourquoi utiliser pip sur easy_install? . Si vous préférez vous en tenir à easy_install, alors easy_install pyyaml

78
harperville

Pour MacOSX (non-conformistes), ce qui suit semble fonctionner:

brew install libyaml
Sudo python -m easy_install pyyaml
40
tutuDajuju
pip install PyYAML

Si libyaml n'est pas trouvé ou compilé, PyYAML peut s'en passer sur Mavericks.

17
bbaassssiiee

Il existe trois packages compatibles YAML. Syck (pip install syck) qui implémente la spécification YAML 1.0 à partir de 2002; PyYAML (pip install pyyaml) qui suit la spécification YAML 1.1 de 2004; et ruamel.yaml qui suit la dernière spécification (YAML 1.2, à partir de 2009).

Vous pouvez installer le paquet compatible YAML 1.2 avec pip install ruamel.yaml ou si vous utilisez une version moderne de Debian/Ubuntu (ou une version dérivée) avec:

Sudo apt-get install python-ruamel.yaml
11
Anthon

Systèmes basés sur Debian:

$ Sudo aptitude install python-yaml

ou plus récent pour python3

$ Sudo aptitude install python3-yaml

5
hbadger

Utilisez strictyaml à la place

Si vous avez le luxe de créer le fichier yaml vous-même ou si vous n'avez pas besoin de aucune de ces fonctionnalités de yaml standard, je vous recommande d'utiliser strictyaml au lieu du paquetage standard pyyaml.

En bref, yaml par défaut présente de graves défauts en termes de sécurité, d’interface et de prévisibilité. strictyaml est un sous-ensemble de la spécification yaml qui ne présente pas ces problèmes (et qui est mieux documenté).

Vous pouvez en savoir plus sur les problèmes avec yaml régulière ici

OPINION: strictyaml devrait être l'implémentation par défaut de yaml et l'ancienne spécification de yaml devrait être obsolète.

1
Connor

la commande suivante va télécharger pyyaml, qui comprend également yaml 

pip install pyYaml
0
Ankit Shukla

"Il devrait y avoir un - et de préférence un seul - moyen évident de le faire." Alors laissez-moi en ajouter un autre. Celui-ci ressemble plus à "installer à partir des sources" pour Debian/Ubuntu, à partir de https://github.com/yaml/pyyaml ​​

Installez libYAML et ses en-têtes:

Sudo apt-get install libyaml-dev

Téléchargement les sources pyyaml:

wget http://pyyaml.org/download/pyyaml/PyYAML-3.13.tar.gz

Installez depuis les sources (n'oubliez pas d'activer votre venv):

. your/env/bin/activate
tar xzf PyYAML-3.13.tar.gz
cd PyYAML-3.13.tar.gz
(env)$ python setup.py install
(env)$ python setup.py test 
0
Sergey Belash

Pour moi, l'installation de la version de développement de libyaml l'a fait. 

yum install libyaml-devel         #centos
apt-get install libyaml-dev       # ubuntu
0
Mayank Jaiswal