JSON with Python
JSON = Java Script Object Notation
JSON জনপ্রিয় ডেটা ফর্ম্যাট যা স্ট্রাকচার্ড ডেটা উপস্থাপনের জন্য ব্যবহৃত হয়।
API(Application Programming Interface) এ Data transfer/store/respresent করার জন্য JSON খুবই জনপ্রিয়।
এই সেশনে আমরা দেখবো , কিভাবে পাইথন দিয়ে JSON হ্যান্ডেল করতে পারি পারি ।
JSON to Python Dictionary
পাইথনে আমরা json data কে dictionary তে পরিবর্তন করার জন্য json module এ loads ফাংশন ব্যবহার করে থাকি । নিচে একটা উদাহরণ দেখা যাক –
import json
json_data = ‘{"language" : "python","organization" : "vivasoft"}’
convert_into_dictionary = json.loads(json_data)
print(convert_into_dictionary)
# Output
# {"language": "python", "organization": "vivasoft"}
Python Dictionary to JSON
পাইথনে আমরা dictionary কে json data তে পরিবর্তন করার জন্য json module এ dumps ফাংশন ব্যবহার করে থাকি । নিচে একটা উদাহরণ দেখা যাক –
```python
import json
some_data = {
"name" : "vivasoft",
"is_active" : True,
"branches" : None,
"people" : 100
}
json_data = json.dumps(some_data)
print(json_data)
# Output
# {"name": "vivasoft", "is_active": true, "branches": null, "people": 100}
কিছু ব্যাপার লক্ষ্যণীয়
JSON Syntax****Python Syntax
null
None
true
True
false
False
উদাহরন
Example-1:
ডিকশনারি থেকে জেসন
import json
# dictionary
person ={
"name":"Esre",
"age": 40,
"salary": 89000
}
# conversion to JSON done by dumps() function
json_data = json.dumps(person)
# printing the output
print(json_data)
Example -2
জেসন স্ট্রিং থেকে ডিকশনারি
import json
some_json_string = ""
{
"programmar": {
"name": "Shafiul Tareq",
"company": "Vivasoft Ltd",
"alma-matter": [
{
"university": "SUST",
"location": "Sylhet"
}
]
}
}
""
data = json.loads(some_json_string)
print(data["programmar"]["name"])# Shafiul Tareq
Example -3
ডিকশনারি জেসন ফাইল এ লিখা
import json
data = {
"Language": {
"name": "Bangla",
"countries": ["Bangladesh", "India"]
}
}
withopen("api_data.json", "w") as write_file:
json.dump(data, write_file)
Example-4:
জেসন ফাইল থেকে ডাটা এনে ডিকশনারি তে বানানো [ ফাইল হ্যান্ডলিং সম্পর্কে পরবর্তীতে আলোচনা করা হবে ]
import json
withopen("api_data.json", "r")as read_file:
data = json.load(read_file)
print(data)
Example-5:
এপিআই কল দেয়া
import requests import json req = requests.get(‘https://jsonplaceholder.typicode.com/todos/1’) data = json.loads(req.content) print(type(data))#
এসো নিজে করি
- অনুশীলনঃ- একটি json data কে dictionary তে পরিণত করুন
- এই dictionary তে পছন্দমত দুইটি key add করে , সেটি কে JSON এ convert করুন।
- “https://jsonplaceholder.typicode.com/posts” এপিআই কল করুন , এবং কনটেন্ট আনুন
- উপরের এপিআই টি কল দেয়ার পর কন্টেন্ট কোনো জেসন ফাইলে লিখুন পাইথন দিয়ে
- উপরের এপিআই টি কল দেয়ার পর শুধু “[strong] body [/strong]” নামের Key গুলি প্রিন্ট করুন
ইন্টারভিউ প্রশ্নোত্তর
- json.loads() এবং json.load() এর মধ্যে পার্থক্য কি ?
- JSON কি ?
- JSON এবং python dictionary এর মধ্যে পার্থক্য কি ?
- JSON কোথায় কাজে লাগে ?
- json.dump() এবং json.dumps() এর মধ্যে পার্থক্য কি ?