Ten samouczek obejmuje, jak pracować z YAML i popularny język scenariusza, Python. Python to świetny język używany w wielu obszarach, w tym automatyzacja (np. Ansible), w którym pliki YAML znajdują ciężkie użycie. Dlatego zdolność do pracy z Yaml i Python jest wielką zaletą.
Wymagania wstępne
Zanim zaczniemy w głównym samouczku, będziesz musiał spełnić następujące wymagania.
Instalowanie Pyyaml
Aby pracować z plikami YAML w Python, użyjemy pakietu Pyyaml, parsera Yaml i emitera dla języka Pythona. Jest wysoce elastyczny i może mieć zastosowanie do różnych zadań, takich jak pliki konfiguracyjne, serializacja danych i więcej.
Aby zainstalować Pyyaml na komputerze, użyj PIP, jak pokazano w poniższym poleceniu:
PIP3 Zainstaluj pyyyamlJak odczytać plik YAML w Python
Do celów ilustracyjnych użyję publikacji.plik YAML dostępny w języku programowania DART. Zawartość pliku YAML jest poniżej:
Nazwa: NewtifyKredyt: Dart Development Team - https: // dart.dev/tools/pub/pubspec
Po edytowaniu i zapisaniu pliku możemy użyć Pythona do odczytania wartości przechowywanych w pliku.
Pierwszym krokiem jest zaimportowanie pakietu YAML jako:
>>> Importuj YAMLNastępnie musimy załadować plik YAML za pomocą funkcji Safe_Load dostępnej w pakiecie Pyyaml.
>>> z Open („Pubsec.yaml ”) jako f:Ostatnim krokiem jest zebranie kodu. Pełny kod jest pokazany poniżej:
Importuj YAMLZ powyższego kodu zaczynamy od zaimportowania pakietu YAML. Następnie tworzymy główną funkcję (dowolna nazwa działa) i ustawiamy logikę do odczytu pliku YAML.
Po otwarciu i odczytaniu pliku wywoływamy funkcję główną. Na tym etapie plik YAML zostaje przekonwertowany na słownik Python.
Jeśli uruchomimy kod, otrzymujemy dane wyjściowe:
„Nazwa”: „newtify”, „wersja”: „1.2.3 ', „Opis”: „Czy zostałeś przekształcony w Newt? Czy chiałbyś być? Ten pakiet może pomóc. Ma wszystkie funkcje NEWT-Transmogrification, których szukałeś.', „Strona główna”:' https: // przykład-pet-sklep.com/newtify ”,„ Documentation ”: 'https: //.com/newTify/Docs ', „środowisko”: ' sdk ':'> = 2.10.0 <3.0.0', 'dependencies': 'efts': '^2.0.4', 'transmogrify': '^0.4.0', 'dev_dependencies': 'test': '>= 1.15.0 <2.0.0'To nie jest bardzo czytelne; Możesz użyć pakietu takiego jak ładny druk, aby upiększyć słownik pokazany powyżej jako:
Importuj YAMLZrzuci to zawartość jako:
„Zależności”: 'efts': '^2.0.4 ', „transmogrify”:'^0.4.0 ',Teraz jest to bardziej czytelne niż wcześniej.
Jak odczytać wartości z pliku YAML
Aby odczytać wartości z powyższego pliku YAML, wszystko, co musimy zrobić, to uzyskać dostęp do danych za pomocą klucza słownika.
Na przykład, aby odczytać wartość klucza środowiska, używamy:
>>> print (read_yaml [„środowisko”])To da nam wartość przechowywaną w kluczu „środowiska” słownika Read_Yaml. Jak pokazano niżej:
„sdk”: '> = 2.10.0 <3.0.0'Powyższe dane wyjściowe jest zagnieżdżonym słownikiem; Możemy uzyskać rzeczywistą wartość, idąc dalej słownik jako:
print (read_yaml ['środowisko'] ['sdk'])To wydrukuje faktyczną wartość jako:
> = 2.10.0 <3.0.0Wniosek
Ten samouczek pokazał, jak odczytać pliki YAML w Python i odczytać wartości określone. To bardzo przydatne, gdy potrzebujesz określonej wartości z pliku YAML, aby wykonać jakąś operację,
Dziękuję za przeczytanie i szczęśliwe kodowanie!