JSON to idealna odpowiedź na porządne pakowanie danych Pythona.
JavaScript Object Notation (JSON) to potężne narzędzie programistyczne do szybkiej wymiany danych między różnymi platformami programistycznymi. Niezależnie od tego, czy przechowujesz dane, czy tworzysz interfejs API, konwersja danych do formatu JSON umożliwia ich ponowne użycie i wywoływanie, niezależnie od technologii uzyskującej do nich dostęp.
Aby wspierać efektywną komunikację między Pythonem a innymi językami programowania, w tym JavaScript, możesz podać swoje dane jako obiekt JSON.
Oto jak czytać i zapisywać w pliku JSON w Pythonie.
Jak pisać bezpośrednio do pliku JSON
Między obiektem JSON a słownikiem Pythona jest cienka linia.
Dlatego łatwo jest przechowywać słownik Pythona w formacie JSON. Ale żeby to zadziałało, potrzebujesz json biblioteka parsera.
Aby rozpocząć, utwórz plik JSON w katalogu głównym projektu.
Utwórz i otwórz plik Pythona w tym samym katalogu. Następnie możesz napisać słownik do pliku JSON za pomocą Pythona:
importuj json
data = {"MUO":"Media", "Google":"Wyszukiwarka", "Python":"Język"}
z open("myfile.json", "w") jako j:
json.dump (dane, j)
Możesz także napisać do pliku bardziej złożoną tablicę:
importuj json
data = {"Witryny":[{"MUO":"Media", "Google":"Wyszukiwarka", "Python":"Język"}]}
z open("myfile.json", "w") jako j:
json.dump (dane, j)
Jak przechowywać listę jako JSON w Pythonie?
Możesz mieć listę lub dwie i chcesz je zapisać w formacie JSON. Dobrą praktyką jest przekonwertowanie ich na słownik przed zapisaniem ich w pliku JSON.
Jest wiele sposobów, aby przekonwertować listę na słownik Pythona.
Poniższy przykładowy kod konwertuje listę na słownik przed zapisaniem jej do obiektu JSON:
importuj json
data = ["MUO", "Media", "Google", "Szukaj", "Python", "Język"]
dane = {dane[i]:dane[i+1] dla i w zakresie (0, len (dane), 2)} #konwertuj dane do słownika
z open("myfile.json", "w") jako j:
json.dump (dane, j)
Związane z: Jak używać pętli for w Pythonie
A jeśli chcesz scalić dwie listy w jedną przed zapisaniem ich do pliku JSON:
importuj json
dane = ["MUO", "Google", "Python"]
data2 = ["Media", "Szukaj", "Język"]
outputData = {data[i]:data2[i] for i in range (len (data))} #scal dwie listy w słowniku
z open("myfile.json", "w") jako j:
json.dump (outputData, j)
Uzyskiwanie dostępu do danych JSON
Dostęp do danych i zapytania z pliku JSON za pomocą Pythona są łatwe:
importuj json
z open("test.json", "r") jako j:
mojedane = json.load (j)
drukuj (moje dane)
Wynik: {'MUO': 'Media', 'Google': 'Szukaj', 'Python': 'Język'}
Ucz się więcej: Jak czytać JSON za pomocą Pythona
A jeśli chcesz uzyskać określone dane z pliku JSON:
z open("test.json", "r") jako j:
mojedane = json.load (j)
drukuj (mojedane["MUO")])
Wynik: Głoska bezdźwięczna
Szybsze zapytania w Pythonie dzięki JSON
Oprócz tego, że są wieloplatformowe, obiekty JSON są lekkie i mogą poprawić szybkość odpowiedzi podczas zapytań. Jak widać, udostępnianie danych wyjściowych jako obiektów JSON w Pythonie jest proste.
Mogą jednak istnieć pewne różnice między przykładami tutaj a rzeczywistym wdrożeniem w prawdziwym projekcie. To jest podstawowa wiedza, której potrzebujesz, aby zacząć. Na szczęście możesz nawet użyć bazy danych NoSQL, takiej jak CouchDB z Pythonem, do przechowywania danych wejściowych bezpośrednio w formacie JSON.
Dzisiaj pokażę Ci, jak używać JSON do przesyłania danych z JavaScript do Pythona. Opowiem o tym, jak skonfigurować serwer WWW, wraz z całym potrzebnym kodem.
Czytaj dalej
- Programowanie
- JavaScript
- Pyton
- Poradniki kodowania

Idowu pasjonuje się każdą inteligentną technologią i produktywnością. W wolnych chwilach bawi się kodowaniem, a gdy się nudzi, przechodzi na szachownicę, ale od czasu do czasu uwielbia też oderwać się od rutyny. Jego pasja do pokazywania ludziom drogi do nowoczesnych technologii motywuje go do pisania więcej.
Zapisz się do naszego newslettera
Dołącz do naszego newslettera, aby otrzymywać porady techniczne, recenzje, bezpłatne e-booki i ekskluzywne oferty!
Jeszcze jeden krok…!
Potwierdź swój adres e-mail w e-mailu, który właśnie do Ciebie wysłaliśmy.