jak przekonwertować słownik na JSON w Pythonie

JSON (JavaScript Object Notation) jest popularnym formatem plików do prezentacji ustrukturyzowanych danych i łatwego przesyłania danych między serwerem a aplikacją. Struktura tego pliku jest podobna do niektórych obiektów Pythona, takich jak list, krotka i słownik. Możesz przekonwertować dowolny obiekt słownika na obiekt JSON za pomocą metod dump() i dump () modułu json. W tym artykule przedstawiono sposoby konwersji dowolnego obiektu słownika na obiekt JSON w Pythonie.

json.metoda dumps ():

metoda ta służy do konwersji obiektu słownika na dane JSON do parsowania lub odczytu i jest wolniejsza niż metoda dump ().

:

json.dumps(object, indent=None, sort_keys=False)

ta metoda ma wiele opcjonalnych argumentów. W tym artykule przedstawiono zastosowanie jednego argumentu obowiązkowego i dwóch opcjonalnych. Tutaj pierwszy argument jest argumentem obowiązkowym, który jest używany do pobierania dowolnego obiektu słownika, drugi argument jest używany do definiowania liczby jednostek dla wcięcia, a trzeci argument jest używany do sortowania kluczy.

json.metoda dump ():

ta metoda służy do przechowywania obiektu Pythona w pliku JSON. Jest szybszy niż metoda dumps (), ponieważ zapisuje oddzielnie w pamięci i Pliku.

:

json.dump (dicionary, fileHandler, indent=None)

ta metoda ma wiele argumentów, takich jak dumps(). Zastosowania trzech argumentów są używane w tym artykule do konwersji danych obiektu słownika do danych JSON i przechowywania danych do pliku JSON. W tym przypadku pierwszy argument jest używany do pobrania obiektu słownika, który musi zostać przekonwertowany na obiekt JSON, a drugi argument jest używany do przyjęcia nazwy modułu obsługi pliku, w którym zostaną zapisane dane JSON. Trzeci argument służy do Ustawienia jednostki wcięcia.

jak te dwie metody mogą być wykorzystane do konwersji obiektu słownika do pliku JSON lub json ciąg są pokazane poniżej tego artykułu.

przykład-1: Konwertuj słownik na JSON za pomocą dumps() z wcięciem

wspomniano wcześniej, że metoda dumps() ma jeden obowiązkowy parametr i może przyjąć obiekt słownika do konwersji danych na łańcuch JSON. W poniższym skrypcie dict_data jest zmienną słownikową, która zawiera dane określonego rekordu ucznia. Na początku metoda dumps() jest używana z jednym argumentem, a wartość dict_data jest konwertowana na dane JSON. Wyjście zarówno słownika i formatu JSON jest taki sam, jeśli nie wcięć jest używany w danych JSON. Następnie, metoda dumps() jest używana z dwoma argumentami, a 3 jest używane jako wartość wcięcia dla danych JSON. Drugie wyjście JSON wygeneruje z wcięciem.

#!/usr/bin/env python3
# Importuj moduł json
Importuj json
# Zdefiniuj słownik
dict_data = { „student_id”: „011894”, „nazwa”: „Matthew”, „batch”: 30, „SEMESTR”:6 }
# Print dane słownika
print(„Dictonary Output: \n”, dict_data, „\n”)
# Konwertuj słownik na obiekt JSON bez wcięć
json_data = JSON.zrzuty (dict_data)
# print JSON data
print („wyjście JSON bez wcięć: \n”,json_data, „\n”)
# Konwertuj słownik na obiekt json z wcięciem
json_data = json.dumps (dict_data,indent=3)
# print JSON data with indentation
print („JSON Output with indentation: \n”, json_data)

wyjście:

po uruchomieniu skryptu pojawi się następujące wyjście.

przykład-2: Konwersja słownika do JSON za pomocą dumps () z sort_keys

klucze danych JSON mogą być sortowane za pomocą sort_keys argumentu dumps(). Domyślną wartością tego argumentu jest False. W poniższym skrypcie obiekt słownika jest konwertowany na dane JSON bez użycia sort_keys i użycia sort_keys do wyświetlenia użycia tego argumentu. Pierwsza metoda dumps() jest używana z wartością wcięcia 5, A wyjście pokazuje dane JSON przy użyciu wcięcia 5. W drugiej metodzie dumps () używany jest sort_keys i ustawiony na True do sortowania wartości klucza. Ostatnie wyjście JSON pokaże dane po sortowaniu wartości klucza.

#!/usr/bin / env python3
# Importuj moduł json
Importuj json
# Zdefiniuj słownik
dict_data = {’nazwa’:’Madison’,’Month’:’May’,’year’: 2020, 'sales’:}
# Print dictionary data
print(„Dictonary Output: \n”, dict_data, „\n”)
# Konwertuj słownik z danymi listy na json
json_data = json.zrzuty (dict_data,indent = 5)
# print JSON data
print („wyjście JSON z wcięciem: \n”, json_data)
# Konwertuj słownik z danymi listy na json za pomocą kluczy sortowania
json_data = json.dumps (dict_data,indent = 5, sort_keys = True)
# print posortowane dane json na podstawie kluczy
print („posortowane wyjście JSON z wcięciem: \n”, json_data)

wyjście:

po uruchomieniu skryptu pojawi się następujące wyjście. Pierwsze wyjście JSON pokazuje wartości klucza zdefiniowane w słowniku, a drugie wyjście JSON pokazuje wartości klucza w posortowanej kolejności.

przykład-3: Konwertuj słownik na dane JSON i zapisz do pliku JSON

jeśli chcesz zapisać dane JSON do pliku po konwersji ze słownika, musisz użyć metody dump (). W tym przykładzie pokazano, w jaki sposób można przekonwertować obiekt słownika na dane JSON i przechowywać dane w pliku JSON. Tutaj metoda dump () używa trzech argumentów. Pierwszy argument przyjmuje obiekt słownika zdefiniowany wcześniej. Drugi argument pobiera zdefiniowaną wcześniej zmienną File handler, aby utworzyć plik JSON. Trzeci argument definiuje wartość wcięcia. Zawartość nowo zapisanego pliku JSON zostanie później wydrukowana jako wyjście.

#!/usr/bin / env python3
# Importuj moduł json
Importuj JSON
# Zdefiniuj słownik
dict_data = { 'C-101′: 'programowanie PHP’, 'c-102′: 'Programowanie Bash’, 'c-103′:
’Programowanie Python’,
'c-104′: 'Programowanie obiektowe’}
# Print dane słownika
print(„Dictonary Output: \n”, dict_data, „\n”)
# Ustaw nazwę pliku json
jsonFile = 'course_list.JSON ’
# Otwórz plik json do zapisu danych json
za pomocą open (jsonFile, 'w’) jako fileHandler1:
json.dump(dict_data, fileHandler1, indent = 2)
# Otwórz plik json do odczytu
fileHandler2 = open (jsonFile)
print („zawartość pliku JSON: \n”, fileHandler2.Czytaj())

wyjście:

po uruchomieniu skryptu pojawi się następujące wyjście.

wniosek:

wymagane jest ukrycie danych słownika w danych JSON, aby ułatwić różne zadania programistyczne. Ta konwersja danych jest ważna, ponieważ dane mogą być łatwo przesyłane z jednego skryptu do innego skryptu za pomocą JSON. Mam nadzieję, że ten poradnik pomoże użytkownikom Pythona poznać sposoby konwertowania danych słownika na dane JSON i zastosować je poprawnie w swoim skrypcie.



+