YAML (YAML Ain’t Markup Language) est un format de sérialisation des données lisible par l’homme, souvent utilisé comme alternative à d’autres formats tels que JSON ou XML. Son design minimaliste et sa syntaxe intuitive en font un excellent choix pour stocker des configurations, des données structurées.
Dans cet article, nous allons explorer l’utilisation de YAML en Python, de sa lecture et son écriture à ses cas d’utilisation.
Pourquoi utiliser YAML en Python ?
Il existe plusieurs raisons pour lesquelles vous pourriez vouloir utiliser YAML en Python :
- Configuration : YAML est souvent utilisé pour stocker les paramètres de configuration d’une application, car il est facile à lire et à modifier manuellement.
- Sérialisation de données : YAML peut être utilisé pour sérialiser et désérialiser des structures de données Python complexes, comme des listes imbriquées ou des dictionnaires.
- Lisibilité : Grâce à sa syntaxe basée sur des espaces et à sa structure hiérarchique claire, les fichiers YAML sont plus lisibles que d’autres formats comme JSON ou XML.
- Compatibilité avec de nombreux langages : YAML est pris en charge par de nombreux langages de programmation, ce qui en fait un choix idéal pour le stockage et l’échange de données entre différentes parties d’une application.
Travailler avec YAML et Python
Installer YAML à l’aide de pip
:
pip install pyyaml
Une fois installé, vous pouvez importer les fonctions nécessaires à partir du module yaml
import yaml
Lire un fichier YAML
Pour lire les données à partir d’un fichier YAML, vous pouvez utiliser la fonction yaml.safe_load()
:
with open('config.yaml', 'r') as file:
config = yaml.safe_load(file)
Cette fonction analyse le contenu du fichier YAML et le convertit en un objet Python correspondant (généralement un dictionnaire ou une liste).
Écrire dans un fichier YAML
Pour écrire des données dans un fichier YAML, vous pouvez utiliser la fonction yaml.dump()
:
data = {
'name': 'John Doe',
'age': 32,
'skills': ['Python', 'JavaScript', 'SQL']
}
with open('data.yaml', 'w') as file:
yaml.dump(data, file)
Cette fonction convertit l’objet Python (dans cet exemple, un dictionnaire) en une représentation YAML et l’écrit dans le fichier spécifié.
Exemple d’utilisation : Configuration d’une application
Un cas d’utilisation courant de YAML en Python est le stockage des paramètres de configuration d’une application. Voici un exemple de fichier de configuration YAML (config.yaml
) :
database:
host: localhost
port: 5432
user: myapp
password: secret
logging:
level: INFO
file: /var/log/myapp.log
options:
auto_restart: true
max_connections: 100
Vous pouvez ensuite lire ces paramètres dans votre code Python :
import yaml
with open('config.yaml', 'r') as file:
config = yaml.safe_load(file)
# Accéder aux paramètres de configuration
db_host = config['database']['host']
log_level = config['logging']['level']
auto_restart = config['options']['auto_restart']
Lire aussi :
- Utiliser NumPy pad : La façon simple d’étendre vos tableaux
- Chaînes de Caractères Python : La Clé pour Manipuler le Texte comme un Pro
- Python : Break, Continue et Pass Le Guide Ultime