পাইথনের এলএক্সএমএল ব্যবহার করে কোনও অ্যাট্রিবিউটর বিষয়বস্তুর উপর ভিত্তি করে উপাদানগুলি আমাকে সম্পূর্ণরূপে অপসারণ করতে হবে। উদাহরণ:
import lxml.etree as et
xml="""
<groceries>
<fruit state="rotten">apple</fruit>
<fruit state="fresh">pear</fruit>
<fruit state="fresh">starfruit</fruit>
<fruit state="rotten">mango</fruit>
<fruit state="fresh">peach</fruit>
</groceries>
"""
tree=et.fromstring(xml)
for bad in tree.xpath("//fruit[@state=\'rotten\']"):
#remove this element from the tree
print et.tostring(tree, pretty_print=True)
আমি এটি মুদ্রণ করতে চাই:
<groceries>
<fruit state="fresh">pear</fruit>
<fruit state="fresh">starfruit</fruit>
<fruit state="fresh">peach</fruit>
</groceries>
কোনও অস্থায়ী পরিবর্তনশীল সংরক্ষণ না করে নিজে নিজে এটিতে মুদ্রণ না করে কি উপায় আছে:
newxml="<groceries>\n"
for elt in tree.xpath('//fruit[@state=\'fresh\']'):
newxml+=et.tostring(elt)
newxml+="</groceries>"