Jak odczytać plik YAML w Python

Jak odczytać plik YAML w Python

Pełna forma YAML jest kolejnym językiem marki. Ten format pliku jest teraz bardzo popularny do przechowywania serializowanych danych, które można czytać. Służy głównie do plików konfiguracyjnych, ale może być używany również do innych celów. Różne typy danych skalarnych, takie jak liczba, ciąg itp., i złożone dane, takie jak lista, słownik może być treścią tego pliku. Rozszerzenie tego fie jest.Yaml '. W Pythonie istnieje wiele modułów do odczytania pliku YAML. Użycie Pyyaml Moduł do odczytania pliku YAML w Pythonie pokazał w tym samouczku.

Wymagania wstępne:

Zainstaluj moduł Pyyaml

Pyyaml jest najlepszym modułem Pythona do czytania Yaml plik. Pyyaml Moduł nie jest domyślnie zainstalowany z Pythonem. Musisz więc zainstalować ten pakiet przed sprawdzeniem przykładów tego samouczka. Uruchom następujące polecenie, aby zainstalować Pyyaml.

$ pip instaluj pyyyaml

Utwórz plik YAML

Utwórz nazwany plik YAML klient.Yaml z następującą zawartością, aby użyć tego pliku w następnej części tego samouczka.

klient.Yaml

- Nazwa: Kamal Hossain
E -mail: [email protected]
Mobile: 01843456790
- Imię: Sakil Ahamed
E -mail: [email protected]
Mobile: 015662343423
- Imię: Mizanur Rahman
E -mail: [email protected]
Mobile: 01936784534

Przykład-1: Przeczytaj zawartość YAML po przekształceniu obiektu Pythona

Po zainstalowaniu Pakiet Pyyaml, Moduł YAML może być zaimportowany do skryptu Pythona do odczytania Yaml Treść poprzez przekształcenie obiektu Pythona. zrzut () funkcja z Yaml Moduł służy do utworzenia Yaml treść poprzez serializowanie treści obiektu Python. Utwórz plik Pythona z następującym skryptem, aby wygenerować i wydrukować strumień YAML, przekształcając zawartość obiektu Pythona. zrzut () funkcja sortuje treść słownika w oparciu o klucze domyślnie.

# Importuj moduł YAML
Importuj YAML
# Deklaruj obiekt Python z danymi
książki = [„Nazwa”: „Think Python: Wprowadzenie do projektu oprogramowania”, „Autor”: „Allen B. Downey ', „Price”: „23”,
„Nazwa”: „Płynny Python: jasne, zwięzłe i skuteczne programowanie”,
„Autor”: „Luciano Ramalho”, „Price”: „50”,
„Nazwa”: „Think Python: Wprowadzenie do projektowania oprogramowania”,
„Autor”: „Allen B. Downey ', „Price”: „33”
]
# Konwertuj i wydrukuj dane JSON w strumieniu YAML
Wydrukuj (Yaml.wysypisko (książki))

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Pozycje każdego słownika z listy Python przekonwertowały się na każdego członka treści YAML. Treść wyjścia posortowała na podstawie kluczy słownika. W tym celu wartość klucza autora została wydrukowana jako pierwsza, a wartość klucza ceny została wydrukowana ostatnia.

Przykład-2: Przeczytaj zawartość YAML z pliku YAML

klient.plik YAML utworzony w poprzedniej części tego samouczka został użyty w tym przykładzie. Utwórz plik Python z następującym skryptem, aby odczytać posortowaną zawartość klient.plik YAML na podstawie kluczy. Funkcja ładowania () użył w skrypcie do odczytania pełnej zawartości klient.plik YAML. Ta funkcja zwróci treść pliku jako listę słowników w Python. Następnie zrzut () funkcja jest używany do konwersji listy na strumień YAML, który został wydrukowany później.

# Importuj moduł YAML
Importuj YAML
# Załaduj dane YAML z pliku
Z otwartym („Klient.YAML ') jako FH:
Read_Data = YAML.Obciążenie (FH, ładowarka = YAML.Fullloader)
# Wydrukuj dane YAML przed sortowaniem
print (read_data)
# Sortuj dane YAML na podstawie kluczy
sorted_data = yaml.zrzut (read_data)
# Wydrukuj dane YAML po sortowaniu
print (sorted_data)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Po przekształceniu treści klient.plik YAML W listę słowników w Python, każdy słownik listy Python przekonwertował na każdego członka treści YAML, jak poprzedni przykład. Wartość Parametr sort_key z zrzut () funkcja jest ustawione na PRAWDA domyślnie. Tak więc wyjście pokazuje posortowane Yaml Treść oparta na klawiszach.

Przykład-3: Przeczytaj klawisze i wartości z pliku YAML

Utwórz plik Python z następującym skryptem, aby odczytać i wydrukować klucz i wartość oddzielnie od klient.plik YAML. Po załadowaniu treści pliku do Zmienna Read_Data, przedmiot() Funkcja używała do odczytu każdego klucza i odpowiedniej wartości z treści. Zagnieżdżone 'Do„pętla używała do iteracji pełnej zawartości pliku i wydrukowania par kluczowych.

# Importuj moduł YAML
Importuj YAML
# Załaduj plik YAML
Z otwartym („Klient.YAML ') jako FH:
# Załaduj dane YAML z pliku
Read_Data = YAML.Obciążenie (FH, ładowarka = YAML.Fullloader)
# Iteruj pętlę, aby odczytać i wydrukować dane YAML
Dla i w zakresie (0, len (read_data)):
Dla klucza wartość w read_data [i].rzeczy():
print (klucz, „:”, wartość)
wydrukować(")

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. Treść pliku nie została posortowana, ponieważ funkcja zrzutu () nie została użyta w skrypcie.

Przykład-4: Przeczytaj treść YAML na liście słowników

funkcja safe_load () służy do konwersji zawartości pliku YAML na listę słowników Python. Ta funkcja może być również używana do ładowania danych z niezaufanych źródeł. Utwórz plik Python z następującym skryptem, aby załadować zawartość pliku YAML za pomocą funkcja safe_load () i wydrukuj załadowaną zawartość.

# Importuj moduł YAML
Importuj YAML
# Załaduj plik YAML
Z otwartym („Klient.YAML ') jako FH:
# Konwertuj dane YAML na słownik
Dictionary_Data = Yaml.safe_load (FH)
# Wydrukuj dane słownika
print (Dictionary_Data)

Wyjście:

Następujące dane wyjściowe pojawią się po wykonaniu powyższego skryptu. W wyjściu wydrukowano listę słowników.

Wniosek:

Sposoby czytania Yaml Treść z obiektu Pythona i pliku zostały pokazane w tym samouczku za pomocą różnych przykładów. Koncepcja parsowania Yaml plik za pomocą Pakiet Pyyaml zostanie usunięty dla użytkowników Pythona po ćwiczeniu przykładów tego samouczka.