Python

Kuinka muuntaa sanakirja JSONiksi pythonissa

Kuinka muuntaa sanakirja JSONiksi pythonissa
JSON (JavaScript Object Notation) on suosittu tiedostomuoto, joka esittelee jäsennellyt tiedot ja siirtää tiedot palvelimen ja sovelluksen välillä helposti. Tämän tiedoston rakenne on samanlainen kuin jotkut Python-objektit, kuten luettelo, dupleksi ja sanakirja. Voit muuntaa minkä tahansa sanakirjaobjektin muotoon JSON esine käyttämällä kaataa () ja kaatopaikat () menetelmät Json moduuli. Tässä artikkelissa esitetään tapoja muuntaa minkä tahansa sanakirjaobjektin JSON-objektiksi pythonissa.

json.kaatopaikat () menetelmä:

Tätä menetelmää käytetään muuntamaan sanakirjaobjekti JSON-dataksi jäsentämistä tai lukemista varten ja se on hitaampaa kuin kaataa () menetelmä.

Syntaksi:

json.kaatopaikat (objekti, sisennys = ei mitään, lajittelunäppäimet = väärä)

Tässä menetelmässä on monia valinnaisia ​​argumentteja. Yhden pakollisen ja kahden valinnaisen argumentin käyttö on esitetty tässä artikkelissa. Ensimmäinen argumentti on pakollinen argumentti, jota käytetään minkä tahansa sanakirjaobjektin ottamiseen, toista argumenttia käytetään määrittämään sisennyksen yksikkömäärä ja kolmatta argumenttia avainten lajitteluun.

json.dump () -menetelmä:

Tätä menetelmää käytetään python-objektin tallentamiseen JSON-tiedostoon. Se on nopeampi kuin kaatopaikat () menetelmä, koska se kirjoittaa muistiin ja tiedostoon erikseen.

Syntaksi:

json.dump (dicionary, fileHandler, sisennys = Ei mitään)

Tällä menetelmällä on monia argumentteja, kuten kaatopaikat (). Kolme argumenttia käytetään tässä artikkelissa sanakirjaobjektin tietojen muuntamiseksi JSON-tiedoiksi ja tietojen tallentamiseksi JSON-tiedostoksi. Ensimmäistä argumenttia käytetään tässä ottamaan sanakirjaobjekti, joka on muunnettava JSON-objektiksi, ja toista argumenttia käytetään sen tiedoston tiedostokäsittelijän nimen ottamiseen, johon JSON-tiedot kirjoitetaan. Kolmatta argumenttia käytetään asettamaan sisennysyksikkö.

Kuinka näitä kahta menetelmää voidaan käyttää sanakirjaobjektin muuntamiseen JSON-tiedostoksi tai JSON-merkkijonoksi, on esitetty tämän artikkelin alla.

Esimerkki 1: Muunna sanakirja JSONiksi käyttämällä kaatopaikat () sisennyksellä

Aikaisemmin mainitaan, että dumps () -menetelmällä on yksi pakollinen parametri ja se voi viedä sanakirjaobjektin muuntamaan tiedot JSON-merkkijonoksi. Seuraava komentosarja, dict_data on sanakirjamuuttuja, joka sisältää tietyn opiskelijatietueen tiedot. Ensiksi, kaatopaikat () -menetelmää käytetään yhden argumentin ja arvon kanssa dict_data muunnetaan JSON-tiedoiksi. Sekä sanakirjan että JSON-muodon tulos on sama, jos JSON-tiedoissa ei käytetä sisennystä. Seuraava, kaatopaikat () menetelmää käytetään kahdella argumentilla, ja 3 käytetään sisennysarvona JSON-tiedoille. Toinen JSON-lähtö tuottaa sisennyksen.

#!/ usr / bin / env python3
# Tuo Json-moduuli
tuo json
# Määritä sanakirja
dict_data = "student_id": "011894", "name": "Matthew", "batch": 30, "lukukausi": 6
# Tulosta sanakirjatiedot
tulosta ("Sanakirjan tulos: \ n", dict_data, "\ n")
# Muunna sanakirja json-objektiksi ilman sisennystä
json_data = json.kaatopaikat (dict_data)
# tulosta Json-tiedot
tulosta ("JSON-tulos ilman sisennystä: \ n", json_data, "\ n")
# Muunna sanakirja json-objektiksi sisennyksellä
json_data = json.kaatopaikat (dict_data, sisennys = 3)
# tulosta Json-tiedot sisennyksellä
tulosta ("JSON-lähtö sisennuksella: \ n", json_data)

Tuotos:

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen.

Esimerkki 2: Muunna sanakirja JSONiksi käyttämällä dumps () -tyyppiä sort_keys-näppäimillä

JSON-tietojen avaimet voidaan lajitella käyttämällä lajittelunäppäimet kaatopaikkojen argumentti (). Tämän argumentin oletusarvo on False. Seuraavassa komentosarjassa sanakirjaobjekti muunnetaan JSON-tiedoiksi ilman käyttöä lajittelunäppäimet ja käyttämällä lajittelunäppäimet näyttääksesi tämän argumentin käytön. Ensimmäistä dumps () -menetelmää käytetään sisennysarvolla 5 ja Lähtö näyttää JSON-datan sisennyksen 5 avulla. Toisessa dumps () -menetelmässä lajittelunäppäimiä käytetään ja asetetaan True-arvoon avainarvojen lajittelussa. Viimeinen JSON-lähtö näyttää tiedot avainarvojen lajittelun jälkeen.

#!/ usr / bin / env python3
# Tuo Json-moduuli
tuo json
# Määritä sanakirja
dict_data = 'nimi': 'Madison', 'Kuukausi': 'Toukokuu', 'vuosi': 2020, 'myynti': [1000, 2100, 3500, 1200]
# Tulosta sanakirjatiedot
tulosta ("Sanakirjan tulos: \ n", dict_data, "\ n")
# Muunna luettelotietoja sisältävä sanakirja jsoniksi
json_data = json.kaatopaikat (dict_data, sisennys = 5)
# tulosta Json-tiedot
tulosta ("JSON-lähtö sisennuksella: \ n", json_data)
# Muunna luettelotietoja sisältävä sanakirja jsoniksi lajittelemalla avaimet
json_data = json.kaatopaikat (dict_data, sisennys = 5, sort_keys = True)
# tulosta lajitellut Json-tiedot avainten perusteella
tulosta ("Lajiteltu JSON-lähtö sisennuksella: \ n", json_data)

Tuotos:

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen. Ensimmäinen JSON-lähtö näyttää avainarvot määriteltyinä sanakirjassa ja toinen JSON-lähtö näyttää avaimen arvot järjestyksessä.

Esimerkki 3: Muunna sanakirja JSON-tiedoiksi ja tallenna JSON-tiedostoksi

Jos haluat tallentaa JSON-tiedot tiedostoon muuntamisen jälkeen sanakirjasta, sinun on käytettävä kaatopaikka() menetelmä. Tässä esimerkissä näytetään, miten sanakirjaobjekti voidaan muuntaa JSON-dataksi ja tallentaa tiedot JSON-tiedostoon. Tässä kaataa () menetelmä käyttää kolmea argumenttia. Ensimmäinen argumentti vie aiemmin määritetyn sanakirjaobjektin. Toinen argumentti vie tiedostokäsittelijän muuttujan, joka on määritelty myös aiemmin, JSON-tiedoston luomiseksi. Kolmas argumentti määrittää sisennysarvon. Äskettäin kirjoitetun JSON: n sisältö tulostetaan myöhemmin tulostettuna.

#!/ usr / bin / env python3
# Tuo Json-moduuli
tuo json
# Määritä sanakirja
dict_data = 'c-101': 'PHP-ohjelmointi', 'c-102': 'Bash-ohjelmointi', 'c-103':
'Python-ohjelmointi',
'c-104': 'Kohdeohjattu ohjelmointi'
# Tulosta sanakirjatiedot
tulosta ("Sanakirjan tulos: \ n", dict_data, "\ n")
# Aseta Json-tiedostonimi
jsonFile = 'kurssin_lista.json '
# Avaa json-tiedosto json-tietojen kirjoittamista varten
avoimen (jsonFile, 'w') kanssa tiedostonaHandler1:
json.dump (dict_data, fileHandler1, sisennys = 2)
# Avaa Json-tiedosto lukemista varten
fileHandler2 = avoin (jsonFile)
tulosta ("JSON-tiedoston sisältö: \ n", fileHandler2.lukea())

Tuotos:

Seuraava tulos tulee näkyviin komentosarjan suorittamisen jälkeen.

Päätelmä:

Eri ohjelmointitehtävien helpottamiseksi on peitettävä sanakirjatiedot JSON-tietoihin. Tämä datan muuntaminen on tärkeää, koska tietoja voidaan siirtää skripteistä toiseen skripteihin helposti JSON: n avulla. Toivon, että tämä opetusohjelma auttaa python-käyttäjiä tietämään tapoja muuntaa sanakirjatiedot JSON-tiedoiksi ja soveltaa niitä oikein komentosarjassa.

Top 10 Games to Play on Ubuntu
Windows platform has been one of the dominating platforms for gaming because of the huge percentage of games that are developing today to natively sup...
5 parasta arcade-peliä Linuxille
Nykyään tietokoneet ovat vakavia koneita, joita käytetään pelaamiseen. Jos et pääse uusiin korkeisiin pisteisiin, tiedät mitä tarkoitan. Tässä viestis...
Battle For Wesnoth 1.13.6 Development Released
Battle For Wesnoth 1.13.6 released last month, is the sixth development release in the 1.13.x series and it delivers a number of improvements, most no...