Înainte de a arunca o privire profundă în subiect, să aruncăm o privire asupra ce sunt șirurile și ce este JSON?
Siruri de caractere: sunt o secvență de caractere care sunt notate cu virgulă „”. Sunt imuabile, ceea ce înseamnă că nu pot fi modificate odată declarate.
JSON: înseamnă „JavaScript Object Notation”, fișierele JSON constau din text care poate fi citit cu ușurință de oameni și este prezent sub formă de perechi atribut-valoare.
Extensia fișierelor JSON este „.json”
Să aruncăm o privire la prima abordare a conversiei unui șir în json în Python.
Următorul program ilustrează același lucru.
căutarea contradictorie
# 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))
Ieșire:
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
Explicaţie:
Este timpul să vedem explicația, astfel încât logica noastră să devină clară-
- Deoarece aici obiectivul este de a converti un șir în fișier json, vom importa mai întâi modulul json.
- Următorul pas este să inițializam obiectul json în care avem numele subiectului ca chei și apoi sunt specificate valorile corespunzătoare.
- După aceasta, am folosit gunoi () pentru a converti un obiect Python într-un șir json.
- În cele din urmă, vom folosi incarca() pentru a analiza un șir JSON și a-l converti într-un dicționar.
Folosind 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))
Ieșire:
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
Explicaţie:
Să înțelegem ce am făcut în programul de mai sus.
- Deoarece aici obiectivul este de a converti un șir în fișier json, vom importa mai întâi modulul json.
- Următorul pas este să inițializam obiectul json în care avem numele subiectului ca chei și apoi sunt specificate valorile corespunzătoare.
- După aceasta, am folosit eval() pentru a converti un șir Python în json.
- La executarea programului, acesta afișează rezultatul dorit.
Preluarea valorilor
În cele din urmă, în ultimul program vom prelua valorile după conversia string în json.
este un personaj deosebit
Să aruncăm o privire.
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'])
Ieșire:
1 17
Putem observa următoarele lucruri în rezultat -
- Am convertit șirul în json folosind json.loads().
- După aceasta, am folosit cheile „C_code” și „Java_code” pentru a obține valorile corespunzătoare.
Concluzie
În acest tutorial, am învățat cum să convertim un șir în json folosind Python.