Ennen kuin sukeltaa syvällisesti aiheeseen, katsotaanpa, mitä merkkijonot ovat ja mikä on JSON?
Kielet: ovat merkkijonoja, jotka on merkitty käänteisillä pilkuilla ''. Ne ovat muuttumattomia, mikä tarkoittaa, että niitä ei voi muuttaa, kun ne on ilmoitettu.
JSON: tarkoittaa 'JavaScript Object Notation', JSON-tiedostot koostuvat tekstistä, jota ihmiset voivat helposti lukea ja jotka ovat attribuutti-arvo-parien muodossa.
JSON-tiedostojen tunniste on .json
Katsotaanpa ensimmäistä tapaa muuntaa merkkijono jsoniksi Pythonissa.
Seuraava ohjelma havainnollistaa samaa.
esimerkki binaarihakupuusta
# converting string to json import json # initialize the json object i_string = {'C_code': 1, 'C++_code' : 26, 'Java_code' : 17, 'Python_code' : 28} # printing initial json i_string = json.dumps(i_string) print ('The declared dictionary is ', i_string) print ('It's type is ', type(i_string)) # converting string to json res_dictionary = json.loads(i_string) # printing the final result print ('The resultant dictionary is ', str(res_dictionary)) print ('The type of resultant dictionary is', type(res_dictionary))
Lähtö:
The declared dictionary is {'C_code': 1, 'C++_code' : 26, 'Java_code' : 17, 'Python_code' : 28} It's type is The resultant dictionary is {'C_code': 1, 'C++_code' : 26, 'Java_code' : 17, 'Python_code' : 28} The type of resultant dictionary is
Selitys:
On aika nähdä selitys, jotta logiikkamme tulee selväksi.
- Koska tässä tavoitteena on muuntaa merkkijono json-tiedostoksi, tuomme ensin json-moduulin.
- Seuraava vaihe on alustaa json-objekti, jossa meillä on aiheen nimi avaimina, ja sitten niitä vastaavat arvot määritetään.
- Tämän jälkeen olemme käyttäneet kaatopaikat () Python-objektin muuntamiseksi json-merkkijonoksi.
- Lopuksi käytämme lataa () jäsentääksesi JSON-merkkijonon ja muuntaaksesi sen sanakirjaksi.
eval()
# converting string to json import json # initialize the json object i_string = ''' {'C_code': 1, 'C++_code' : 26, 'Java_code' : 17, 'Python_code' : 28} ''' # printing initial json print ('The declared dictionary is ', i_string) print ('Its type is ', type(i_string)) # converting string to json res_dictionary = eval(i_string) # printing the final result print ('The resultant dictionary is ', str(res_dictionary)) print ('The type of resultant dictionary is ', type(res_dictionary))
Lähtö:
The declared dictionary is {'C_code': 1, 'C++_code' : 26, 'Java_code' : 17, 'Python_code' : 28} Its type is The resultant dictionary is {'C_code': 1, 'C++_code': 26, 'Java_code': 17, 'Python_code': 28} The type of resultant dictionary is
Selitys:
Ymmärrämme, mitä olemme tehneet yllä olevassa ohjelmassa.
- Koska tässä tavoitteena on muuntaa merkkijono json-tiedostoksi, tuomme ensin json-moduulin.
- Seuraava vaihe on alustaa json-objekti, jossa meillä on aiheen nimi avaimina, ja sitten niitä vastaavat arvot määritetään.
- Tämän jälkeen olemme käyttäneet eval() Python-merkkijonon muuntamiseksi json-muotoon.
- Ohjelmaa suoritettaessa se näyttää halutun tulosteen.
Haetaan arvoja
Lopuksi viimeisessä ohjelmassa noudetaan arvot merkkijonon muuntamisen jälkeen jsoniksi.
Katsotaanpa sitä.
import json i_dict = '{'C_code': 1, 'C++_code' : 26, 'Java_code':17, 'Python_code':28}' res = json.loads(i_dict) print(res['C_code']) print(res['Java_code'])
Lähtö:
merkkijonon muuntaminen kokonaisluvuksi
1 17
Voimme havaita seuraavat asiat lähdössä-
- Olemme muuntaneet merkkijonon json-muotoon json.loads()-komennolla.
- Tämän jälkeen olemme käyttäneet avaimia 'C_code' ja 'Java_code' niiden vastaavien arvojen hakemiseen.
Johtopäätös
Tässä opetusohjelmassa opimme muuttamaan merkkijono jsoniksi Pythonilla.