So lesen Sie die YAML -Datei in Python

So lesen Sie die YAML -Datei in Python

Die vollständige Form von YAML ist eine weitere Aufschlagssprache. Dieses Dateiformat ist jetzt sehr beliebt, um serialisierte Daten zu speichern, die menschlich lesbar sind. Es wird hauptsächlich für Konfigurationsdateien verwendet, kann jedoch auch für andere Zwecke verwendet werden. Verschiedene Arten von skalaren Daten wie Anzahl, Zeichenfolge usw., und zusammengesetzte Daten wie die Liste können das Wörterbuch der Inhalt dieser Datei sein. Die Erweiterung dieses Fie ist ''.yaml '. In Python gibt es mehrere Module, um die YAML -Datei zu lesen. Die Verwendung der Verwendung der Pyyaml Modul zum Lesen der YAML -Datei in Python hat in diesem Tutorial gezeigt.

Voraussetzungen:

Installieren Sie das Pyyaml ​​-Modul

Pyyaml ist das beste Modul von Python, um das zu lesen Yaml Datei. Pyyaml Das Modul ist standardmäßig nicht mit Python installiert. Sie müssen dieses Paket also installieren, bevor Sie die Beispiele dieses Tutorials überprüfen. Führen Sie den folgenden Befehl aus, um zu installieren Pyyaml.

$ pip Installieren Sie Pyyaml

Erstellen Sie eine YAML -Datei

Erstellen Sie eine YAML -Datei mit dem Namen Klient.Yaml Mit dem folgenden Inhalt, um diese Datei im nächsten Teil dieses Tutorials zu verwenden.

Klient.Yaml

- Name: Kamal Hossain
E -Mail: [email protected]
Mobil: 01843456790
- Name: Sakil Ahamed
E -Mail: [email protected]
Mobil: 015662343423
- Name: Mizanur Rahman
E -Mail: [email protected]
Mobil: 01936784534

Beispiel 1: Lesen Sie den YAML-Inhalt nach dem Konvertieren eines Python-Objekts

Nach der Installation der Pyyaml ​​-Paket, Das YAML -Modul kann in das Python -Skript zum Lesen importiert werden Yaml Inhalt durch Konvertierung eines Python -Objekts. Der Dump () Funktion des Yaml Modul wird verwendet, um das zu erstellen Yaml Inhalt durch Serialisierung des Inhalts des Python -Objekts. Erstellen Sie eine Python -Datei mit dem folgenden Skript, um den YAML -Stream zu generieren und zu drucken, indem Sie den Inhalt des Python -Objekts konvertieren. Der Dump () Funktion Sortiert den Inhalt des Wörterbuchs standardmäßig auf den Schlüssel basierend auf den Schlüssel.

# YAML -Modul importieren
Yaml importieren
# Deklarieren Sie ein Python -Objekt mit Daten
books = ['name': 'Denk python: Eine Einführung in das Software -Design', 'Autor': 'Allen B. Downey ',' Preis ':' 23 ',
'Name': 'Fluent Python: Klar, prägnant und effektives Programmieren',
'Autor': 'Luciano Ramalho', 'Preis': '50',
'Name': 'Denken Sie an Python: Eine Einführung in das Softwaredesign',
'Autor': 'Allen B. Downey ',' Preis ':' 33 '
]
# Die JSON -Daten im YAML -Stream konvertieren und drucken
drucken (yaml.Dump (Bücher))

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Die Elemente jedes Wörterbuchs der Python -Liste wurden in jedes Mitglied des YAML -Inhalts umgewandelt. Der Inhalt der Ausgabe hat basierend auf den Schlüssel des Wörterbuchs sortiert. Dazu wurde der Wert des Autorschlüssels zuerst gedruckt, und der Wert des Preisschlüssels wurde zuletzt gedruckt.

Beispiel-2: Lesen Sie den YAML-Inhalt aus einer YAML-Datei aus

Der Klient.YAML -Datei In diesem Beispiel wurde im vorherigen Teil dieses Tutorials erstellt. Erstellen Sie eine Python -Datei mit dem folgenden Skript, um den sortierten Inhalt des Klient.YAML -Datei basierend auf den Schlüssel. Der load () Funktion hat im Skript verwendet, um den vollständigen Inhalt der zu lesen Klient.YAML -Datei. Diese Funktion gibt den Inhalt der Datei als Python -Liste von Wörterbüchern zurück. Als nächstes die Dump () Funktion wird verwendet, um die Liste in einen YAML -Stream umzuwandeln, der später gedruckt wurde.

# YAML -Modul importieren
Yaml importieren
# YAML -Daten aus der Datei laden
mit offenem ('Kunde.yaml ') als FH:
read_data = yaml.Laden (fh, lader = yaml.Fullloader)
# Drucken Sie die YAML -Daten vor dem Sortieren aus
print (read_data)
# Sortieren Sie YAML -Daten basierend auf Tasten
sorted_data = yaml.Dump (read_data)
# YAML -Daten nach der Sortierung drucken
print (sorted_data)

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Nach Konvertierung des Inhalts des Klient.YAML -Datei In eine Python -Liste von Wörterbüchern wurde jedes Wörterbuch der Python -Liste wie das vorherige Beispiel in jedes Mitglied des YAML -Inhalts umgewandelt. Der Wert der SORT_KEY -Parameter des Dump () Funktion ist eingestellt auf WAHR standardmäßig. Die Ausgabe zeigt also die sortierte Yaml Inhalt basierend auf den Schlüssel.

Beispiel-3: Lesen Sie die Schlüssel und Werte aus einer YAML-Datei

Erstellen Sie eine Python -Datei mit dem folgenden Skript zum Lesen und Drucken des Schlüssels und des Werts getrennt von der Klient.YAML -Datei. Nach dem Laden des Inhalts der Datei in die Read_Data Variable, Die Artikel() Die Funktion wurde verwendet, um jeden Schlüssel und den entsprechenden Wert aus dem Inhalt zu lesen. Das verschachtelte 'für'Loop hat den vollständigen Inhalt der Datei iteriert und die Schlüsselwertpaare drucken.

# YAML -Modul importieren
Yaml importieren
# Die YAML -Datei laden
mit offenem ('Kunde.yaml ') als FH:
# YAML -Daten aus der Datei laden
read_data = yaml.Laden (fh, lader = yaml.Fullloader)
# Die Schleife zum Lesen und Drucken von YAML -Daten iterieren
Für i in Reichweite (0, Len (read_data)):
Für den Schlüssel, Wert in read_data [i].Artikel():
print (Schlüssel, ":", Wert)
drucken(")

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Der Inhalt der Datei wurde nicht sortiert, da die Funktion von Dump () im Skript nicht verwendet wurde.

Beispiel-4: Lesen Sie den YAML-Inhalt in einer Liste von Wörterbüchern aus

Der Safe_load () Funktion wird verwendet, um den Inhalt der YAML -Datei in die Python -Liste der Wörterbücher umzuwandeln. Diese Funktion kann verwendet werden, um Daten aus nicht vertrauenswürdigen Quellen zu laden. Erstellen Sie eine Python -Datei mit dem folgenden Skript, um den Inhalt einer YAML -Datei mit dem zu laden Safe_load () Funktion und drucken Sie den geladenen Inhalt aus.

# YAML -Modul importieren
Yaml importieren
# Die YAML -Datei laden
mit offenem ('Kunde.yaml ') als FH:
# Die YAML -Daten in ein Wörterbuch umwandeln
Dictionary_data = yaml.Safe_load (FH)
# Drucken Sie die Wörterbuchdaten
print (Dictionary_data)

Ausgang:

Die folgende Ausgabe wird nach der Ausführung des obigen Skripts angezeigt. Eine Liste von Wörterbüchern wurde in der Ausgabe gedruckt.

Abschluss:

Die Möglichkeiten zum Lesen Yaml Inhalte aus einem Python -Objekt und einer Datei wurden in diesem Tutorial unter Verwendung verschiedener Beispiele gezeigt. Das Konzept, das zu analysieren Yaml Datei mit dem Pyyaml ​​-Paket wird für die Python -Benutzer freigegeben, nachdem sie die Beispiele dieses Tutorials üben haben.