Data আদান-প্রদানের standard format JSON — একটা API response, একটা config file, program run-এর মধ্যে সংরক্ষণ করা data। Python-এর built-in json module এটা আর Python-এর নিজের dict আর list-এর মধ্যে রূপান্তর handle করে।
import json
user = {'name': 'Sam', 'age': 28, 'active': True}
json_string = json.dumps(user)
print(json_string)
# {"name": "Sam", "age": 28, "active": true}print(json.dumps(user, indent=2))json_string = '{"name": "Sam", "age": 28}'
user = json.loads(json_string)
print(user['name']) # Sam — এখন একটা সাধারণ Python dict# লেখা
with open('user.json', 'w') as f:
json.dump(user, f, indent=2)
# পড়া
with open('user.json') as f:
user = json.load(f)dump()/load() ("s" ছাড়া) সরাসরি একটা খোলা file নিয়ে কাজ করে; dumps()/loads() ("s" সহ, "string"-এর জন্য) memory-তে ইতিমধ্যে থাকা একটা Python string নিয়ে কাজ করে।
| Python | JSON |
|---|---|
| dict | object |
| list, tuple | array |
| str | string |
| int, float | number |
| True / False | true / false |
| None | null |
try:
data = json.loads('{invalid json}')
except json.JSONDecodeError as e:
print(f'Invalid JSON: {e}')Tuple-এর জন্য একটা one-way রূপান্তর
একটা tuple একটা JSON array-তে রূপান্তরিত হয় আর একটা Python list হিসেবে ফিরে আসে, একটা tuple না — JSON-এর নিজের কোনো tuple type নেই, তাই round trip-এ সেই পার্থক্য হারিয়ে যায়।