Rumah > Artikel > pembangunan bahagian belakang > Berikut ialah beberapa tajuk berasaskan soalan yang sesuai dengan coretan kod Python ElementTree yang anda berikan, memfokuskan pada masalah mengabaikan ruang nama: * Cara Mencari Elemen dalam Fail XML Tanpa Kekurangan Ruang Nama
Apabila bekerja dengan fail XML dalam Python menggunakan modul ElementTree, mungkin perlu mencari elemen tanpa mengira ruang nama mereka. Walau bagaimanapun, apabila berurusan dengan fail XML yang mengandungi ruang nama, tingkah laku lalai adalah untuk mempertimbangkan awalan ruang nama apabila mencari elemen. Ini boleh menyusahkan, terutamanya apabila bekerja dengan banyak ruang nama.
Untuk menyelesaikan isu ini, seseorang boleh mengubah suai dokumen XML untuk menghapuskan ruang nama, tetapi ini mungkin tidak selalu dapat dilaksanakan. Sebagai alternatif, seseorang boleh menghuraikan dokumen XML dan mengubah suai teg dalam hasilnya untuk mengabaikan ruang nama:
<code class="python">from io import StringIO # Python 2: from StringIO import StringIO import xml.etree.ElementTree as ET # Use iterparse to retain lazy parsing it = ET.iterparse(StringIO(xml)) for _, el in it: _, _, el.tag = el.tag.rpartition('}') # Strip namespace root = it.root</code>
Pendekatan ini membolehkan pengendalian mudah berbilang ruang nama tanpa menambahkannya secara eksplisit di hadapan setiap teg.
Atas ialah kandungan terperinci Berikut ialah beberapa tajuk berasaskan soalan yang sesuai dengan coretan kod Python ElementTree yang anda berikan, memfokuskan pada masalah mengabaikan ruang nama: * Cara Mencari Elemen dalam Fail XML Tanpa Kekurangan Ruang Nama. Untuk maklumat lanjut, sila ikut artikel berkaitan lain di laman web China PHP!