Python

Python met JSON-bestanden

Python met JSON-bestanden
Met de groei en evolutie van uitdagingen in de informatica, blijft Python stijgen als de meest gewilde programmeervaardigheid om datawetenschapsproblemen op te lossen.

Wat is JSON?

Een van de tools, talen en technieken die gewoonlijk worden gekoppeld aan Python, JSON of JavaScript Object Notation, is een bestandsindeling die Python kan lezen, schrijven en ontleden. JSON wordt vaak gebruikt voor de uitwisseling van gegevens op het web. Meer specifiek is JSON het geprefereerde tekstformaat bij het verzenden van informatie van een webserver naar een browser of vice versa. Dit is voordelig vanwege de efficiëntie. JSON kan direct worden geconverteerd naar JavaScript-objecten en dus worden geïnterpreteerd, en JavaScript-objecten kunnen direct worden geconverteerd naar JSON-tekst. Er is geen extra hectisch en ongeorganiseerd parseren vereist. Als het gaat om gegevensuitwisseling op het web, is JSON het formaat dat je moet gebruiken.

Python - JSON lezen, schrijven en ontleden

Omdat JSON taalonafhankelijk is, kunnen Python-objecten ook worden geconverteerd naar JSON. Evenzo, als Python gegevens in JSON-indeling ontvangt, kan het deze naadloos converteren naar Python-objecten. JSON is lichtgewicht. U hoeft alleen JSON in Python te importeren om gebruik te maken van Python's lees-JSON, JSON schrijven en JSON-functionaliteit parseren. JSON is een ingebouwde module in Python en je hoeft alleen maar te typen import json bovenaan je Python met JSON-code om aan de slag te gaan.

Waarom zou je JSON gebruiken met Python?? Welnu, als u aan een webgebaseerd project werkt dat te maken heeft met het lezen van gegevens, is de kans groot dat u een Python-uitweg uit de situatie moet tegenkomen. Python is een taal die voor zoveel verschillende doeleinden kan worden gebruikt en de groeiende functionaliteit betekent dat het onvermijdelijk is dat u het tijdens uw programmeerreis tegenkomt. De ondersteuning die Python geeft aan verschillende dynamieken van programmeren betekent dat het een fluitje van een cent is om met JSON in deze taal te werken.

Basis JSON-modulefuncties in Python

Het formaat:

Als je in het verleden veel Python hebt gebruikt, dan moet je bekend zijn met een gegevensstructuur die bekend staat als het woordenboek. In feite is het vrij waarschijnlijk dat woordenboeken je beste vrienden zijn geweest bij het werken in Python. Hun eenvoudig te interpreteren formaat maakt ze de meest verstandige gegevensstructuur om te gebruiken bij het werken met aangepaste objecten waarvoor attributen van verschillende typen nodig zijn. En geloof ons als we zeggen dat woordenboeken waanzinnig vaak worden gebruikt in Python!

Als u bijvoorbeeld een Item-object wilt gebruiken, kunt u een woordenboek maken zoals:

Nu je hebt gezien hoe een woordenboek eruitziet in Python-code en wanneer het wordt afgedrukt, weet ik zeker dat het formaat nu veel logischer is dan wanneer u voor het eerst op die informatie zou stuiten die tussen accolades is ingesloten.

Hier beginnen de dingen een beetje relevanter te worden. Zet je schrap! Omdat we de grootste kruising tussen Python en JSON gaan onthullen. Onthoud het formaat van een woordenboek in Python? Dat kleine codefragment met de accolades hierboven weergegeven? Bekijk nu de afbeelding hieronder:

merk iets op? Hoe kan je niet?? Het is precies hetzelfde! Python-woordenboeken en JSON-tekst hebben in wezen hetzelfde formaat. Je kunt hier waarschijnlijk uit afleiden wat we gaan vaststellen naarmate het artikel vordert - dat het episch eenvoudig is om Python-woordenboeken in JSON-bestanden te "dumpen". Woordenboeken zijn niet de enige Python-objecten die kunnen worden geconverteerd naar JSON-tekst. Lijsten, tupels, booleans, strings, ints en de lijst gaat maar door zijn allemaal uitwisselbaar met JSON. Een ding dat je misschien niet is opgevallen in de twee bovenstaande afbeeldingen, zijn de aanhalingstekens. JSON gebruikt dubbele aanhalingstekens enkel en alleen, in tegenstelling tot Python. Misschien wil je dit detail onthouden om jezelf te redden van een aflevering van "Waar is de verdomde bug deze keer"??!”.

De procedure:

Het eerste dat u hoeft te doen, is de ingebouwde module van Python voor JSON . importeren.

Laten we eerst beginnen met het maken van JSON vanuit een Python-woordenboek. Het schrijven van JSON gebruikt de methode json.stortplaatsen(). Deze methode retourneert een JSON-tekenreeks. De onderstaande code-screenshot toont een woordenboek dat is geconverteerd naar JSON en de uitvoer ervan wordt weergegeven in Jupyter Notebook.

Laten we nu dit Python-woordenboek, geconverteerd naar JSON, naar een JSON-bestand schrijven. Het onderstaande codefragment laat zien dat dit wordt gedaan met behulp van json.dumpen(). Hiermee wordt een tekstbestand (txt-extensiebestand) gemaakt met de JSON-tekenreeks ernaartoe geschreven.

Zo ziet het resulterende bestand eruit:

Door woordenboeken naar JSON te converteren, worden JSON-objecten gemaakt. Maar hoe zit het met andere gegevenstypen in Python?? Wat gebeurt er met ze als je ze converteert naar JSON-tekst? Deze vraag heeft geen enkel antwoord. Lijsten en tupels worden bijvoorbeeld geconverteerd naar het JavaScript-equivalent Array. Ints en floats worden omgezet in Getal. Str wordt geconverteerd naar String. Oh, en we waren het bijna vergeten te vermelden! Al deze gegevenstypen kunnen worden geconverteerd naar JSON met behulp van de twee methoden json.dump() en json.stortplaatsen().

Nu u bekend bent met de basisfunctionaliteit van de dumps-methode, kunt u veilig lezen hoe u de parameters ervan beter kunt gebruiken. Het heeft een parameter voor het bestellen van gegevens genaamd sort_keys. U kunt het scheidingsteken instellen in plaats van de standaardwaarde te gebruiken met de parameter voor scheidingstekens. Inspringing kan ook worden opgegeven.

Dus hier heb je het! Zo eenvoudig is het om met JSON-bestanden in Python te werken! Gebruik deze handleiding en de documentatie van Python om u op weg te helpen.

Hoe FPS-teller in Linux-games te tonen
Linux-gaming kreeg een grote duw toen Valve in 2012 Linux-ondersteuning voor Steam-client en hun games aankondigde. Sindsdien hebben veel AAA- en indi...
Sid Meier's Civilization VI downloaden en spelen op Linux and
Inleiding tot het spel Civilization 6 is een moderne versie van het klassieke concept dat werd geïntroduceerd in de serie Age of Empires-games. Het id...
Doom installeren en spelen op Linux
Inleiding tot Doom De Doom-serie is ontstaan ​​in de jaren 90 na de release van de originele Doom. Het was meteen een hit en vanaf die tijd heeft de g...