Ako imate problema s dodavanjem komentara u svoju JSON datoteku, postoji dobar razlog: JSON ne podržava komentare.
"Uklonio sam komentare iz JSON-a jer sam vidio da ih ljudi koriste kako bi držali direktive za raščlanjivanje, što bi uništilo interoperabilnost", piše Douglas Crockford, koji je popularizirao tekstualni format podataka.
Međutim, postoji rješenje. I o tome govori ovaj članak: kako dodati komentare u svoju JSON datoteku.
Dodajte podatke kao komentare
Način zaobilaženja problema s komentarima je dodavanje podataka u svoju JSON datoteku koji funkcioniraju kao komentari.
Prođimo kroz primjer, počevši od ovih podataka u našoj JSON datoteci:
{ "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 }
Sada dodamo još jedan par ključ / vrijednost koji će poslužiti kao naš komentar, što možete vidjeti u prvom retku donjeg koda:
{ "_comment1": "this is my comment", "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 }
Evo još jednog primjera. Ovaj put koristimo dvije donje crte na početku i na kraju ključa:
"__comment2__": "this is another comment",
Podvlake pomažu u razlikovanju komentara od ostalih podataka u našoj datoteci.
Riječ opreza
Imajte na umu važan detalj.
Komentari koje smo dodali u našu JSON datoteku uključeni su u objekt JSON. Drugim riječima, komentari se tretiraju kao podaci.
Evo na što mislimo.
Ovo je kôd u našoj datoteci data.json
:
{ "_comment1": "this is my comment", "sport": "basketball", "coach": "Joe Smith", "wins": 15, "losses": 5 }
Sada ćemo te podatke pročitati iz datoteke read_comments.py
:
import json with open("data.json", mode="r") as j_object: data = json.load(j_object) print(data)
Rezultat uključuje naš komentar:
{'_comment1': 'this is my comment', 'sport': 'basketball', 'coach': 'Joe Smith', 'wins': 15, 'losses': 5}
Vrijednost komentara možemo izdvojiti i iz JSON objekta this is my comment
::
import json with open("data.json", mode="r") as j_object: data = json.load(j_object) print(data["_comment1"])
Imajte na umu da je komentar samo komentar u očima programera, a ne računala.
Drugačija vrsta komentara
Ova se JSON-ova praksa komentiranja razlikuje od komentara u programskim jezicima, poput Pythona, koji se obično zanemaruju kada se program izvodi.
# Here's my comment word = "house" for letter in word: print(letter)
Kada pokrenemo program Python gore, dobit ćemo slova u riječi "kuća". Ali ne vidimo komentar. Zanemaruje se.
Mogućnosti komentiranja
JSMin je još jedna opcija koju treba razmotriti.
To je alat koji uklanja dodatni razmak i komentare iz JavaScript datoteka. Ali radi i na JSON datotekama. JSMin uklanja komentare iz JSON datoteka prije nego što se raščlane.
Dakle, postoje mogućnosti kada je riječ o komentiranju u JSON datotekama. Iako nisu savršena rješenja, barem postoje načini da uključite potrebnu dokumentaciju kad vam zatreba.
Pišem o učenju programiranja i najboljim načinima za to ( amymhaddad.com).