[英]Example with PyXB: Generate Python code and obtain Attribute value within XML Element
我很難開始使用PyXB。
讓我們以這個XML文件為例:
<?xml version="1.0"?>
<purchaseOrder orderDate="1999-10-20">
<shipTo country="US">
<name>Alice Smith</name>
<street>123 Maple Street</street>
<city>Anytown</city><state>AK</state><zip>12341</zip>
</shipTo>
<billTo country="US">
<name>Robert Smith</name>
<street>8 Oak Avenue</street>
<city>Anytown</city><state>AK</state><zip>12341</zip>
</billTo>
</purchaseOrder>
假設我成功創建了Python庫pol.py:
Python代碼
import po1
xml = open('po1.xml').read()
order = po1.CreateFromDocument(xml)
我了解可以在Element中獲取內容(例如order.billTo.name = Robert Smith),但是如何從屬性“國家”(即“美國”)中獲取值?
提前致謝!
PyXB將XML屬性公開為Python屬性,與將XML元素公開為Python屬性的方式完全相同。 因此,您只需執行以下操作:
print(order.billTo.name)
print(order.billTo.country)
在XML中,屬性和元素位於不同的名稱空間中,而在Python中,它們共享一個名稱空間,因此,如果屬性和元素都使用相同的名稱,則PyXB將重命名該屬性。 在這種情況下,生成綁定時將發出診斷信息。 有關此過程的詳細信息,請參見使名稱沖突 。
聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.