Python JSON
JSON என்பது தரவைச் சேமித்து பரிமாறுவதற்கான ஒரு தொடரியல் ஆகும்.
JSON என்பது உரை, JavaScript பொருள் குறியீட்டுடன் எழுதப்பட்டது.
"age": 30,
"city": "New York"
JSON in Python:
Python இல் json என்று ஒரு உள்ளமைக்கப்பட்ட தொகுப்பு உள்ளது, இது JSON தரவுடன் பணியாற்ற பயன்படுத்தப்படலாம்.
JSON தொகுதி
Example
json தொகுதியை இறக்குமதி செய்யவும்:
import json
JSON ஐ பாகுபடுத்துதல் - JSON இலிருந்து Python க்கு மாற்றவும்
உங்களிடம் ஒரு JSON சரம் இருந்தால், json.loads() முறையைப் பயன்படுத்தி அதைப் பாகுபடுத்தலாம்.
முடிவு ஒரு Python அகராதியாக இருக்கும்.
Example
JSON இலிருந்து Python க்கு மாற்றவும்:
import json
# some JSON:
x = '{ "name":"John", "age":30, "city":"New York"}'
# parse x:
y = json.loads(x)
# the result is a Python dictionary:
print(y["age"])
JSON → Python:
json.loads() JSON சரத்தை எடுத்து அதை Python பொருளாக மாற்றுகிறது. "loads" என்பது "load string" என்பதன் சுருக்கம்.
Python இலிருந்து JSON க்கு மாற்றவும்
உங்களிடம் ஒரு Python பொருள் இருந்தால், json.dumps() முறையைப் பயன்படுத்தி அதை ஒரு JSON சரமாக மாற்றலாம்.
Example
Python இலிருந்து JSON க்கு மாற்றவும்:
import json
# a Python object (dict):
x = {
"name": "John",
"age": 30,
"city": "New York"
}
# convert into JSON:
y = json.dumps(x)
# the result is a JSON string:
print(y)
Python → JSON:
json.dumps() Python பொருளை எடுத்து அதை JSON சரமாக மாற்றுகிறது. "dumps" என்பது "dump string" என்பதன் சுருக்கம்.
மாற்றக்கூடிய Python வகைகள்
பின்வரும் வகையான Python பொருள்களை JSON சரங்களாக மாற்றலாம்:
import json
print(json.dumps({"name": "John", "age": 30})) # dict
print(json.dumps(["apple", "bananas"])) # list
print(json.dumps(("apple", "bananas"))) # tuple
print(json.dumps("hello")) # string
print(json.dumps(42)) # int
print(json.dumps(31.76)) # float
print(json.dumps(True)) # True
print(json.dumps(False)) # False
print(json.dumps(None)) # None
Python முதல் JSON மாற்று அட்டவணை
நீங்கள் Python இலிருந்து JSON க்கு மாற்றும்போது, Python பொருள்கள் JSON (JavaScript) சமமானவற்றாக மாற்றப்படுகின்றன:
| Python | JSON |
|---|---|
| dict | Object |
| list | Array |
| tuple | Array |
| str | String |
| int | Number |
| float | Number |
| True | true |
| False | false |
| None | null |
Example
அனைத்து சட்டப்பூர்வ தரவு வகைகளையும் கொண்ட Python பொருளை மாற்றவும்:
import json
x = {
"name": "John",
"age": 30,
"married": True,
"divorced": False,
"children": ("Ann","Billy"),
"pets": None,
"cars": [
{"model": "BMW 230", "mpg": 27.5},
{"model": "Ford Edge", "mpg": 24.1}
]
}
print(json.dumps(x))
முடிவை வடிவமைத்தல்
மேலே உள்ள எடுத்துக்காட்டு ஒரு JSON சரத்தை அச்சிடுகிறது, ஆனால் அது மிகவும் எளிதாக வாசிக்கக்கூடியதாக இல்லை, உள்தள்ளல்கள் மற்றும் வரி இடைவெளிகள் இல்லாமல்.
json.dumps() முறை முடிவை எளிதாக வாசிக்க அளவுருக்களைக் கொண்டுள்ளது:
Example
உள்தள்ளல்களின் எண்ணிக்கையை வரையறுக்க indent அளவுருவைப் பயன்படுத்தவும்:
import json
x = {
"name": "John",
"age": 30,
"city": "New York"
}
print(json.dumps(x, indent=4))
நீங்கள் பிரிப்பான்களையும் வரையறுக்கலாம், இயல்புநிலை மதிப்பு (", ", ": "), அதாவது ஒவ்வொரு பொருளையும் பிரிக்க கமாவும் இடைவெளியும் பயன்படுத்துதல், மற்றும் விசைகளை மதிப்புகளிலிருந்து பிரிக்க முழுக்குறியும் இடைவெளியும் பயன்படுத்துதல்:
print(json.dumps(x, indent=4, separators=(". ", " = ")))
முடிவை வரிசைப்படுத்துதல்
json.dumps() முறை முடிவில் விசைகளை வரிசைப்படுத்த அளவுருக்களைக் கொண்டுள்ளது:
Example
முடிவு வரிசைப்படுத்தப்பட வேண்டுமா இல்லையா என்பதைக் குறிப்பிட sort_keys அளவுருவைப் பயன்படுத்தவும்:
import json
x = {
"name": "John",
"age": 30,
"city": "New York"
}
print(json.dumps(x, indent=4, sort_keys=True))
json.dumps() அளவுருக்கள்:
indent: உள்தள்ளல்களின் எண்ணிக்கை (வாசிப்பை எளிதாக்குகிறது)
separators: பொருள்கள் மற்றும் விசை-மதிப்பு ஜோடிகளை பிரிக்க பயன்படுத்தப்படும் சரங்கள்
sort_keys: விசைகளை அகர வரிசைப்படி வரிசைப்படுத்துகிறது (True/False)
பயிற்சிகள் மூலம் கற்றல்
நீங்கள் json.loads() முறையுடன் குறியீட்டைப் பாகுபடுத்தும்போது, முடிவு ஒரு குறிப்பிட்ட Python தரவு வகையாக திருப்பி அனுப்பப்படுகிறது, எது?
json.loads() முடிவு எந்த Python தரவு வகையாக திருப்பி அனுப்பப்படுகிறது?
விளக்கம்:
json.loads() JSON சரத்தை Python பொருளாக மாற்றுகிறது:
- JSON Object → Python dict
- JSON Array → Python list
- JSON String → Python str
- JSON Number → Python int அல்லது float
- JSON true → Python True
- JSON false → Python False
- JSON null → Python None
பொதுவாக, JSON தரவு ஒரு அகராதியாக (dict) தொடங்கும், ஏனெனில் JSON பொருள்கள் அகராதிகளாக மாற்றப்படுகின்றன.