对于xml如果要做一个定义式的说明,就不得不引用w3school里面简洁而明快的说明:
- XML 指可扩展标记语言(EXtensible Markup Language)
- XML 是一种标记语言,很类似 HTML
- XML 的设计宗旨是传输数据,而非显示数据
- XML 标签没有被预定义。您需要自行定义标签。
- XML 被设计为具有自我描述性。
常用属性和方法总结
ET里面的属性和方法不少,这里列出常用的,供使用中备查。
Element对象
常用属性:
- tag:string,元素数据种类
- text:string,元素的内容
- attrib:dictionary,元素的属性字典
- tail:string,元素的尾形
针对属性的操作
- clear():清空元素的后代、属性、text和tail也设置为None
- get(key, default=None):获取key对应的属性值,如该属性不存在则返回default值
- items():根据属性字典返回一个列表,列表元素为(key, value)
- keys():返回包含所有元素属性键的列表
- set(key, value):设置新的属性键与值
针对后代的操作
- append(subelement):添加直系子元素
- extend(subelements):增加一串元素对象作为子元素
- find(match):寻找第一个匹配子元素,匹配对象可以为tag或path
- findall(match):寻找所有匹配子元素,匹配对象可以为tag或path
- findtext(match):寻找第一个匹配子元素,返回其text值。匹配对象可以为tag或path
- insert(index, element):在指定位置插入子元素
- iter(tag=None):生成遍历当前元素所有后代或者给定tag的后代的迭代器
- iterfind(match):根据tag或path查找所有的后代
- itertext():遍历所有后代并返回text值
- remove(subelement):删除子元素
ElementTree对象
- find(match)
- findall(match)
- findtext(match, default=None)
- getroot():获取根节点.
- iter(tag=None)
- iterfind(match)
- parse(source, parser=None):装载xml对象,source可以为文件名或文件类型对象.
- write(file, encoding="us-ascii", xml_declaration=None, default_namespace=None,method="xml")