46/100
发布文章
weixin_44800045
Python3.7 使用xml.etree.ElementTree写入XML时,使节点的属性顺序保持不变
首先本人的安装环境:Python3.7+PyCharm
因为ElementTree的源码方法_serialize_xml中设置了节点属性键的排序,将其注释改变下就可以了,具体如下:
在PyCharm中导入xml.etree.ElementTree,如下:
import xml.etree.ElementTree as ET
按住快捷键Ctrl 用鼠标左键点击ElementTree,进入ElementTree源码模块,快捷键Ctrl+F搜索_serialize_xml,跳转到如下界面:
该函数下面找到如下部分:
注释掉:for k, v in sorted(items):
改为:for k, v in items:
这样再运行时,属性的顺序就是你代码写入时的顺序了。