JSON: format wymiany danych
Popularny format tekstu dla danych strukturalnych, który jest rozumiany przez programy w różnych językach.
JSON (JavaScript Object Notation) to format tekstowy do transmisji Dane strukturalne między programami. Nazwa przypomina JavaScript, ale JSON od dawna jest używany przez programy w każdym języku, w tym Python — to tylko tekstowe Format, nie kod, który gdzieś działa.
| Znaczenie JSON | Zgodność w Python |
|---|---|
cel {{"ключ": значение}} | dict |
tablica [1, 2, 3] | list |
łańcuch znaków "текст" | str |
liczba 42 / 3.14 | int / float |
true / false | True / False |
null | None |
{{'name': 'Ada'}} — to wydruk słownika Python, a nie JSON:, w poprawnym JSON wygląda to tak {{"name": "Ada"}}. Pojedyncze cudzysłowy, True wielką literą, przecinek przed zamknięciem przełamuje JSON, nawet jeśli wygląda niemal poprawnie.Moduł json to standardowa biblioteka Python
import json
zadacha = {{"title": „Kup chleb”, "done": False}}
# Python -> tekst JSON
tekst = json.dumps(zadacha, ensure_ascii=False)
print(tekst) # {{"title": "Kup chleb", "done": false}}
14
# tekst JSON -> Python
obratno = json.loads(tekst)
print(obratno["title"]) # Kup chleb
json.dumps() zamienia wszystkie nie-ASCII znaki na sekwencje escape- takie jak \u041a jest ważne, ale dla osoby JSON. ensure_ascii=False pozostawia cyrylicę bez zmian; wynik pozostaje taki sam JSON, po prostu wygodniejszy do czytania.JSON ograniczenia formatu
Format nie ma osobnego typu daty i godziny — zwykle jest przekazywany jako łańcuch znaków do
uzgodniony format (np. "2026-08-23") i już są demontowane
na boku. Nie ma też typu dla danych binarnych (obraz, plik) — zazwyczaj są one kodowane
do tekstu (na przykład Base64) lub przekazane jako osobny JSON zapytania.
oraz liczby rzeczywiste tak ściśle jak Python: bardzo duże lub bardzo dokładne liczby przy
Transfery między różnymi językami programowania czasem wymagają dokładności.