Python JSON

পাইথনে JSON ডেটা ম্যানিপুলেট করতে শিখুন

Python JSON

JSON হল একটি সিনট্যাক্স যা ডেটা সংরক্ষণ এবং বিনিময় করার জন্য।

JSON হল টেক্সট, জাভাস্ক্রিপ্ট অবজেক্ট কোড দিয়ে লেখা।

"name": "John",
"age": 30,
"city": "New York"

📦 JSON in Python:

পাইথনে json নামে একটি অন্তর্নির্মিত প্যাকেজ রয়েছে যা JSON ডেটার সাথে কাজ করতে ব্যবহার করা যেতে পারে।

JSON মডিউল

Example

json মডিউল আমদানি করুন:

import json

JSON পার্সিং - JSON থেকে Python এ রূপান্তর করুন

আপনার যদি JSON স্ট্রিং থাকে,json.loads()এটি পদ্ধতি ব্যবহার করে পার্স করা যেতে পারে

ফলাফল একটি পাইথন অভিধান হবে.

json.loads()
একটি JSON স্ট্রিংকে পাইথন অবজেক্টে রূপান্তর করে

Example

JSON থেকে পাইথনে রূপান্তর করুন:

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"])
Output: 30

🔄 JSON → Python:

json.loads()একটি JSON স্ট্রিং নেয় এবং এটিকে পাইথন অবজেক্টে রূপান্তর করে। "লোড" "লোড স্ট্রিং" এর জন্য সংক্ষিপ্ত।

পাইথন থেকে JSON তে রূপান্তর করুন

আপনার যদি পাইথন বস্তু থাকে,json.dumps()এটি পদ্ধতি ব্যবহার করে একটি JSON স্ট্রিং এ রূপান্তর করা যেতে পারে

json.dumps()
একটি পাইথন বস্তুকে JSON স্ট্রিংয়ে রূপান্তর করে

Example

পাইথন থেকে 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)
Output: {"name": "John", "age": 30, "city": "New York"}

🔄 Python → JSON:

json.dumps()পাইথন বস্তুটি নেয় এবং এটিকে JSON স্ট্রিংয়ে রূপান্তর করে। "ডাম্পস" "ডাম্প স্ট্রিং" এর জন্য সংক্ষিপ্ত।

পরিবর্তনযোগ্য পাইথন প্রকার

নিম্নলিখিত ধরণের পাইথন অবজেক্টগুলিকে 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

পাইথন থেকে JSON রূপান্তর টেবিল

আপনি যখন পাইথন থেকে JSON এ রূপান্তর করেন, তখন পাইথন অবজেক্টগুলি JSON (জাভাস্ক্রিপ্ট) সমতুল্য রূপান্তরিত হয়:

Python JSON
dict Object
list Array
tuple Array
str String
int Number
float Number
True true
False false
None null

Example

একটি পাইথন অবজেক্টকে রূপান্তর করুন যাতে সমস্ত আইনি ডেটা প্রকার রয়েছে:

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))
Output: {"name": "John", "age": 30, "married": true, "divorced": false, "children": ["Ann", "Billy"], "pets": null, "cars": [{"model": "BMW 230", "mpg": 27.5}, {"model": "Ford Edge", "mpg": 24.1}]}

ফলাফল ডিজাইনিং

উপরের উদাহরণটি একটি JSON স্ট্রিং প্রিন্ট করে, কিন্তু এটি খুব পাঠযোগ্য নয়, কোন ইন্ডেন্ট এবং লাইন বিরতি ছাড়াই।

json.dumps()পদ্ধতিতে ফলাফল সহজে পড়ার জন্য পরামিতি রয়েছে:

Example

ইন্ডেন্টের সংখ্যা নির্ধারণ করতে ইন্ডেন্ট প্যারামিটার ব্যবহার করুন:

import json

x = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

print(json.dumps(x, indent=4))
Output: { "name": "John", "age": 30, "city": "New York" }

আপনি ডিফল্ট মান (", ", ": ") সহ বিভাজককেও সংজ্ঞায়িত করতে পারেন, যার অর্থ প্রতিটি বস্তুকে আলাদা করার জন্য কমা এবং স্পেস এবং মান থেকে কীগুলি আলাদা করতে কোলন এবং স্পেস ব্যবহার করা:

print(json.dumps(x, indent=4, separators=(". ", " = ")))
Output: { "name" = "John". "age" = 30. "city" = "New York" }

ফলাফল বাছাই

json.dumps()পদ্ধতির শেষে কীগুলি সাজানোর পরামিতি রয়েছে:

Example

ফলাফল বাছাই করা উচিত কিনা তা নির্দিষ্ট করতে sort_keys প্যারামিটার ব্যবহার করুন:

import json

x = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

print(json.dumps(x, indent=4, sort_keys=True))
Output: { "age": 30, "city": "New York", "name": "John" }

📝 json.dumps() :

indent: ইন্ডেন্টের সংখ্যা (পড়া সহজ করে তোলে)
separators: বস্তু এবং কী-মান জোড়া আলাদা করতে ব্যবহৃত স্ট্রিং
sort_keys: কীগুলিকে বর্ণানুক্রমিকভাবে সাজান (সত্য/মিথ্যা)

ব্যায়ামের মাধ্যমে শেখা

আপনিjson.loads()পদ্ধতির সাথে কোড পার্স করার সময়, ফলাফলটি একটি নির্দিষ্ট পাইথন ডেটা টাইপ হিসাবে ফিরে আসে, কোনটি?

json.loads() Python ?

list
✗ ভুল! JSON অ্যারেগুলি Python তালিকায় রূপান্তরিত হয়, কিন্তু JSON অবজেক্টগুলি অভিধানে রূপান্তরিত হয়
set
✗ ভুল! JSON-এ সেটের কোনো সরাসরি সমতুল্য নেই
tuple
✗ ভুল! JSON অ্যারেগুলি পাইথন তালিকায় রূপান্তরিত হয়, টিপলে নয়
dictionary
✓ ঠিক আছে! json.loads() একটি JSON অবজেক্টকে পাইথন অভিধানে রূপান্তর করে। JSON অ্যারেগুলিকে তালিকায় রূপান্তরিত করা হয়, JSON নম্বরগুলিকে Python নম্বরগুলিতে রূপান্তরিত করা হয় এবং JSON স্ট্রিংগুলিকে Python স্ট্রিংগুলিতে রূপান্তরিত করা হয়৷

💡বর্ণনা:

json.loads()একটি JSON স্ট্রিংকে পাইথন অবজেক্টে রূপান্তর করে:

  • 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 বস্তুগুলি অভিধানে রূপান্তরিত হয়।