jsonecho

XML to Python

একটি XML ডকুমেন্ট পেস্ট করুন এবং এর কাঠামোর সঙ্গে মেলে এমন Python টাইপ পান।

টুলটি লোড হচ্ছে...

XML to Python কীভাবে ব্যবহার করবেন

  1. একটি প্রতিনিধিত্বমূলক XML নমুনা পেস্ট করুন, আদর্শভাবে যেটিতে সব ঐচ্ছিক ফিল্ড পূরণ করা আছে।
  2. রুট টাইপের নাম ঠিক করুন এবং সহায়ক কোডও চান নাকি শুধু টাইপ তা ঠিক করুন।
  3. তৈরি হওয়া Python কোড আপনার প্রজেক্টে কপি করুন।

XML to Python সম্পর্কে

বড় XML পেলোডের জন্য হাতে মডেল ক্লাস লেখা বিরক্তিকর এবং সেখানেই টাইপো ঢোকে। এখানে একটি নমুনা পেস্ট করুন এবং জেনারেটর কাঠামো বের করে: কোন ফিল্ড আছে, কোনগুলো অবজেক্ট, কোনগুলো অ্যারে এবং প্রতিটি মানের টাইপ কী। আউটপুট টাইপ হিন্টসহ dataclass, সঙ্গে from_dict ও to_dict সহায়ক।

XML প্রথমে আমাদের XML to JSON টুলের মতো একইভাবে JSON-এ রূপান্তরিত হয়: অ্যাট্রিবিউট @_ প্রিফিক্স পায় এবং অ্যাট্রিবিউটের পাশের টেক্সট কনটেন্টের নাম #text। সেই ফলাফল থেকে Python টাইপ তৈরি হয়। যে ফিল্ডের নাম বৈধ Python আইডেন্টিফায়ার নয় সেগুলো রূপান্তরিত হয়, এবং সিরিয়ালাইজেশনের জন্য আসল নাম রাখা হয়।

তৈরি কোড ব্যবহার করা

একটি অবজেক্ট পেতে Root.from_dict(json.loads(text)) কল করুন, এবং ফিরে যেতে to_dict()।

ঐচ্ছিক ফিল্ড typing মডিউলের Optional[T] ব্যবহার করে এবং ডিফল্ট None।

সচরাচর জিজ্ঞাসিত প্রশ্ন

তৈরি Python কোড কিসের ওপর নির্ভর করে?

আউটপুট টাইপ হিন্টসহ dataclass, সঙ্গে from_dict ও to_dict সহায়ক।

ফলাফল দিয়ে আমি কীভাবে XML পার্স করব?

আগে XML-কে JSON-এ রূপান্তর করুন (আমাদের XML to JSON টুল একইভাবে তা করে), তারপর একটি অবজেক্ট পেতে Root.from_dict(json.loads(text)) কল করুন, এবং ফিরে যেতে to_dict()।

ঐচ্ছিক ও বাদ পড়া ফিল্ড কীভাবে সামলানো হয়?

ঐচ্ছিক ফিল্ড typing মডিউলের Optional[T] ব্যবহার করে এবং ডিফল্ট None।

জেনারেটর কি একাধিক রেকর্ড দেখে?

এটি শুধু আপনার নমুনায় যা আছে তা-ই জানে। কোনো ফিল্ড আপনার উদাহরণে না থাকলে তা টাইপে আসবে না, এবং আপনার উদাহরণে কোনো মান null হলে তার টাইপ অজানা। যতটা সম্ভব ফিল্ড পূরণ করা একটি উদাহরণ পেস্ট করুন, অথবা একাধিক ভিন্ন রেকর্ডসহ একটি অ্যারে পেস্ট করুন।

আমার XML কি সার্ভারে পাঠানো হয়?

না। জেনারেটর প্রথমবার ব্যবহারের সময় আপনার ব্রাউজারে ডাউনলোড হয়, প্রায় 1 MB, এবং সবকিছু লোকালি চলে।

ডেটা থেকে ক্লাস-এ আরও

সব টুল →