Computer >> कंप्यूटर >  >> प्रोग्रामिंग >> Python

पायथन डिक्शनरी से एक्सएमएल कैसे उत्पन्न करें?


एक अजगर शब्दकोश से XML उत्पन्न करने के लिए, आपको dicttoxml पैकेज स्थापित करने की आवश्यकता है। आप इसका उपयोग करके इसे स्थापित कर सकते हैं:

$ pip install dicttoxml

इंस्टॉल हो जाने के बाद, आप xml बनाने के लिए dicttoxml विधि का उपयोग कर सकते हैं।

उदाहरण

a = {
   'foo': 45,
   'bar': {
      'baz': "Hello"
   }
}
xml = dicttoxml.dicttoxml(a)
print(xml)

आउटपुट

यह आउटपुट देगा:

b'<?xml version="1.0" encoding="UTF-8" ?><root><foo type="int">45</foo><bar type="dict"><baz type="str">Hello</baz></bar></root>'

आप इस आउटपुट को toprettyxml विधि का उपयोग करके सुंदर प्रिंट भी कर सकते हैं।

उदाहरण

xml.dom.minidom से पार्सस्ट्रिंग आयात करें

a = {
   'foo': 45,
   'bar': {
      'baz': "Hello"
   }
}
xml = dicttoxml.dicttoxml(a)
dom = parseString(xml)
print(dom.toprettyxml())

आउटपुट

यह आउटपुट देगा -

<?xml version = "1.0" ?>
<root>
   <foo type = "int">45</foo>
   <bar type = "dict">
      <baz type="str">Hello</baz>
   </bar>
</root>



  1. पायथन में नेमस्पेस के साथ एक्सएमएल दस्तावेज़ कैसे उत्पन्न करें?

    वर्तमान में आप XML दस्तावेज़ों में सीधे नामस्थान नहीं जोड़ सकते क्योंकि यह अभी तक अंतर्निहित Python xml पैकेज में समर्थित नहीं है। तो आपको टैग में सामान्य विशेषता के रूप में नेमस्पेस जोड़ना होगा। उदाहरण के लिए, import xml.dom.minidom doc = xml.dom.minidom.Document() element = doc.createElementNS(

  1. पायथन में एक स्ट्रिंग को डिक्शनरी में कैसे बदलें?

    हम एक अजगर अभिव्यक्ति के रूप में स्ट्रिंग का मूल्यांकन करने के लिए यहां ast.literal_eval() का उपयोग कर सकते हैं। यह सुरक्षित रूप से एक अभिव्यक्ति नोड या एक पायथन अभिव्यक्ति वाले स्ट्रिंग का मूल्यांकन करता है। प्रदान की गई स्ट्रिंग या नोड में केवल निम्नलिखित पायथन शाब्दिक संरचनाएं शामिल हो सकती हैं:स

  1. हम पायथन फ़ंक्शन से एक शब्दकोश कैसे वापस कर सकते हैं?

    पाइथन फंक्शन से डिक्शनरी को वापस करने के कई तरीके हो सकते हैं। नीचे दिए गए पर विचार करें। उदाहरण # This function returns a dictionary def foo():      d = dict();      d['str'] = "Tutorialspoint"      d['x']   = 50   &nb