JSON பைதான் பாகுபாடு: ஒரு எளிய வழிகாட்டி

JSON பைதான் பாகுபாடு: ஒரு எளிய வழிகாட்டி

JSON ('ஜாவாஸ்கிரிப்ட் ஆப்ஜெக்ட் நோட்டேஷன்' என்பதன் பொருள்) பல்வேறு வகையான பயன்பாடுகளுக்கு இடையில் தரவு பரிமாற்றத்தை எளிதாக்கும் உரை அடிப்படையிலான வடிவம். உதாரணமாக, ஒரு பயன்பாடு சி ++ இல் எழுதப்பட்டது விண்டோஸில் இயங்கும் பைத்தானில் எழுதப்பட்ட மற்றும் லினக்ஸில் இயங்கும் அப்ளிகேஷன் மூலம் JSON தரவை எளிதில் பரிமாறிக்கொள்ள முடியும். அதன் எளிமை மற்றும் நெகிழ்வுத்தன்மை சமீபத்திய ஆண்டுகளில் பரவலான பயன்பாட்டிற்கு வழிவகுத்தது, குறிப்பாக முந்தைய எக்ஸ்எம்எல் அடிப்படையிலான வடிவங்களுக்கு முன்னுரிமை.





ஏறக்குறைய எந்த மொழி மற்றும் சூழலிலிருந்தும் JSON ஐ அலசவும் உருவாக்கவும் நூலகங்கள் மற்றும் கருவிகள் உள்ளன. இந்த கட்டுரை பைத்தானைப் பயன்படுத்தி JSON ஐ செயலாக்குவதால் எழும் முறைகள் மற்றும் சிக்கல்களில் கவனம் செலுத்துகிறது.





சில JSON மாதிரிகள்

நீங்கள் சந்திக்கும் மிகவும் பொதுவான JSON நிறுவனம் ஒரு பொருள் : கீழே காட்டப்பட்டுள்ள வடிவத்தில் முக்கிய மதிப்பு மேப்பிங்குகளின் தொகுப்பு.





விண்டோஸ் 8 விண்டோஸ் 10 போல தோற்றமளிக்கும்

நபர்.ஜேசன்:

{
'firstName': 'Alice',
'lastName': 'Hall',
'age': 35
}

பொருள்களின் வரிசையை நீங்கள் எவ்வாறு பிரதிநிதித்துவப்படுத்தலாம் என்பது இங்கே. இந்த பிரதிநிதித்துவத்தில், வரிசையின் ஒவ்வொரு உருப்படியும் ஒரு பொருள். பின்வருபவை பேஸ்பால் வீரர்களின் சம்பளத்தின் மாதிரி.



சம்பளம்.ஜேசன்:

[ {
'year' : 1985,
'teamId' : 'ATL',
'leagueId' : 'NL',
'playerId' : 'barkele01',
'salary' : 870000
}, {
'year' : 1985,
'teamId' : 'ATL',
'leagueId' : 'NL',
'playerId' : 'bedrost01',
'salary' : 550000
} ]

நிச்சயமாக, நீங்கள் ஸ்கேலர்களின் வரிசையையும் பிரதிநிதித்துவப்படுத்தலாம். இது இப்படி தெரிகிறது:





[
'hello',
'world',
35
]

பைத்தானில் பாகுபடுத்தும் JSON

பைதான் வழங்குகிறது json தொகுதி JSON இரண்டிற்கும் பயன்படுத்தப்படலாம், அத்துடன் பைதான் பொருள்கள் மற்றும் பட்டியல்களிலிருந்து JSON ஐ உருவாக்கலாம்.

பின்வரும் குறியீடு துணுக்கு JSON கோப்பை எவ்வாறு திறப்பது மற்றும் தரவை ஒரு மாறியில் ஏற்றுவது எப்படி என்பதைக் காட்டுகிறது.





import json
with open('sample.json', 'r') as fp:
obj = json.load(fp)

JSON தரவைக் கொண்ட ஒரு சரம் உங்களிடம் இருக்கும்போது, ​​பின்வருவனவற்றைக் கொண்டு அதை ஒரு மலைப்பாம்பு பொருளாக (அல்லது பட்டியல்) மாற்றலாம்:

ஜன்னல்களில் imessage வைப்பது எப்படி
obj = json.loads('''{
'firstName': 'Alice',
'lastName': 'Hall',
'age': 35
}''')

ஒரு JSON URL ஐ அலச, நீங்கள் பயன்படுத்தி ஒரு URL பொருளை உருவாக்கலாம் urllib2 மற்றும் பயன்படுத்த json.load () முன்பு போல்.

import urllib2, json
url = urllib2.urlopen('http://site.com/sample.json')
obj = json.load(url)

கையாளுதல் பிழைகள்

JSON பிழைகள் இருக்கும்போது, ​​நீங்கள் ஒரு பெறுவீர்கள் மதிப்பு பிழை . நீங்கள் அதைக் கையாளலாம் மற்றும் தேவைப்பட்டால் திருத்த நடவடிக்கை எடுக்கலாம்.

try:
obj = json.loads('''{
'firstName': 'Alice',
'lastName: 'Hall',
'age': 35
}''')
except ValueError:
print('error loading JSON')

கட்டளை வரியிலிருந்து JSON ஐ அலசுகிறது

சில நேரங்களில், பித்தன் கட்டளை வரியைப் பயன்படுத்தி JSON ஐ பாகுபடுத்துவது பயனுள்ளதாக இருக்கும், ஒருவேளை பிழைகளைச் சரிபார்க்க அல்லது நன்றாக உள்தள்ளப்பட்ட வெளியீட்டைப் பெற.

cat glossary.json
# prints
{'glossary': {'GlossDiv': {'GlossList': {'GlossEntry': {'GlossDef': {'GlossSeeAlso': ['GML', 'XML'], 'para': 'A meta-markup language, used to create markup languages such as DocBook.'}, 'GlossSee': 'markup', 'Acronym': 'SGML', 'GlossTerm': 'Standard Generalized Markup Language', 'Abbrev': 'ISO 8879:1986', 'SortAs': 'SGML', 'ID': 'SGML'}}, 'title': 'S'}, 'title': 'example glossary'}}

மேலே உள்ள JSON கோப்பிலிருந்து உள்தள்ளப்பட்ட வெளியீட்டைப் பெற, நீங்கள் பின்வருவனவற்றைச் செய்யலாம்:

python -mjson.tool glossary.json
# prints
{
'glossary': {
'GlossDiv': {
'GlossList': {
'GlossEntry': {
'Abbrev': 'ISO 8879:1986',
'Acronym': 'SGML',
'GlossDef': {
'GlossSeeAlso': [
'GML',
'XML'
],
'para': 'A meta-markup language, used to create markup languages such as DocBook.'
},
'GlossSee': 'markup',
'GlossTerm': 'Standard Generalized Markup Language',
'ID': 'SGML',
'SortAs': 'SGML'
}
},
'title': 'S'
},
'title': 'example glossary'
}
}

இங்கே நீங்கள் எப்படி JSON பொருளை பைத்தானில் ஏற்றலாம் மற்றும் உங்களுக்குத் தேவையானதை மட்டும் பிரித்தெடுக்கலாம்.

python -c 'import json; fp = open('glossary.json', 'r'); obj = json.load(fp); fp.close(); print(obj['glossary']['title']')
# prints
example glossary

தரவை அணுகுதல்

நீங்கள் ஒரு பைதான் மாறியில் JSON தரவை ஏற்றியவுடன், நீங்கள் எந்த மலைப்பாம்பு கட்டளையைப் போலவே தரவை அணுகலாம் (அல்லது வழக்கில் உள்ளபடி பட்டியல்). எடுத்துக்காட்டாக, மேலே உள்ள JSON தரவை பின்வருமாறு அணுகலாம்:

firstName = obj['firstName']
lastName = obj['Hall']
age = obj['age']

தரவு வகைகள்

தரவு வகைகள் தானாகவே தரவிலிருந்து தீர்மானிக்கப்படும். குறிப்பு வயது ஒரு முழு எண்ணாகப் பகுக்கப்படுகிறது.

print(type(obj['firstName']), type(obj['lastName']), type(obj['age']))
# prints

பின்வரும் மாற்று அட்டவணை JSON இலிருந்து பைத்தானுக்கு மாற்ற பயன்படுகிறது.

தனிப்பயன் வகுப்பைப் பயன்படுத்தி JSON ஐ அலசுகிறது

இயல்பாக, ஒரு JSON பொருள் ஒரு மலைப்பாம்பாகப் பிரிக்கப்பட்டது கட்டளை . சில நேரங்களில் JSON தரவிலிருந்து உங்கள் சொந்த வகுப்பின் ஒரு பொருளை தானாக உருவாக்க வேண்டிய தேவை உங்களுக்கு இருக்கலாம். ஒன்றை குறிப்பிடுவதன் மூலம் நீங்கள் அதைச் செய்யலாம் பொருள்_ஹுக் மாற்றத்தை கையாளும் செயல்பாடு. பின்வரும் உதாரணம் எப்படி என்பதைக் காட்டுகிறது.

இங்கே a ஐ குறிக்கும் தனிப்பயன் வகுப்பு உள்ளது நபர் .

class Person:
def __init__(self, firstName, lastName, age):
self.firstName = firstName
self.lastName = lastName
self.age = age
def __str__(self):
return '{{'firstName' = '{0}','lastName' = '{1}', 'age' = {2}}}'.format(self.firstName, self.lastName, self.age)

இந்த வகுப்பின் ஒரு உதாரணம் தேவையான வாதங்களை பின்வருமாறு நிறைவேற்றுவதன் மூலம் உருவாக்கப்பட்டது:

person = Person('Crystal', 'Newell', 27)

JSON ஐ அலசும்போது நிகழ்வுகளை உருவாக்க இந்த வகுப்பைப் பயன்படுத்த, உங்களுக்கு ஒரு தேவை பொருள்_ஹுக் செயல்பாடு பின்வருமாறு வரையறுக்கப்படுகிறது: செயல்பாடு ஒரு மலைப்பாம்பைப் பெறுகிறது கட்டளை மற்றும் சரியான வகுப்பின் பொருளைத் தருகிறது.

def obj_creator(d):
return Person(d['firstName'], d['lastName'], d['age'])

நீங்கள் இப்போது இதைப் பயன்படுத்தலாம் பொருள்_ஹுக் JSON பாகுபடுத்தியைத் தூண்டும்போது செயல்பாடு.

with open('sample.json', 'r') as fp:
obj = json.load(fp, object_hook = obj_creator)
print(obj)
# prints
{'firstName' = 'Alice','lastName' = 'Hall', 'age' = 35}

JSON பயன்பாட்டின் எடுத்துக்காட்டுகள்

JSON இப்போதெல்லாம் மிகவும் பிரபலமாக உள்ளது. பல வலைத்தளங்கள் மற்றும் சாஸ் (ஒரு சேவையாக மென்பொருள்) பயன்பாடுகள் JSON வெளியீட்டை வழங்குகின்றன, அவை பயன்பாடுகளால் நேரடியாக நுகரப்படும். பொதுவில் கிடைக்கும் சிலவற்றில் பின்வருவன அடங்கும்:

  • StackOverflow/StackExchange. இங்கே ஒரு URL உள்ளது இது JSON வடிவத்தில் கேள்விகளின் பட்டியலை வழங்குகிறது.
  • GitHub ஒரு JSON api ஐ https://developer.github.com/v3/ இல் வழங்குகிறது.
  • இங்கே Flickr API உள்ளது: https://developer.yahoo.com/flickr/.

அதை எப்படி நல்ல முறையில் பயன்படுத்துவது என்பதற்கு மேலும் உதாரணங்களைத் தேடுகிறீர்களானால், இந்த வழிகாட்டியைப் பாருங்கள் பைத்தானைப் பயன்படுத்தி ஒரு சமூக ஊடக போட்டை உருவாக்குதல் .

உங்கள் கோடுகளை எவ்வாறு திரும்பப் பெறுவது

நீங்கள் சேவைகளை உட்கொள்ள அல்லது வழங்க JSON ஐப் பயன்படுத்துகிறீர்களா? உங்கள் தொழில்நுட்ப அடுக்கில் பைத்தானைப் பயன்படுத்துகிறீர்களா? கீழே உள்ள கருத்துகளில் விளக்கவும்.

பகிர் பகிர் ட்வீட் மின்னஞ்சல் விண்டோஸ் 11 க்கு மேம்படுத்துவது மதிப்புள்ளதா?

விண்டோஸ் மறுவடிவமைப்பு செய்யப்பட்டுள்ளது. ஆனால் விண்டோஸ் 10 இலிருந்து விண்டோஸ் 11 க்கு மாறுவதற்கு இது போதுமானதா?

அடுத்து படிக்கவும்
தொடர்புடைய தலைப்புகள்
  • நிரலாக்க
  • நிரலாக்க
  • பைதான்
எழுத்தாளர் பற்றி ஜெய் ஸ்ரீதர்(17 கட்டுரைகள் வெளியிடப்பட்டன) ஜெய் ஸ்ரீதரிடமிருந்து மேலும்

எங்கள் செய்திமடலுக்கு குழுசேரவும்

தொழில்நுட்ப குறிப்புகள், மதிப்புரைகள், இலவச மின் புத்தகங்கள் மற்றும் பிரத்யேக ஒப்பந்தங்களுக்கு எங்கள் செய்திமடலில் சேரவும்!

குழுசேர இங்கே சொடுக்கவும்