et = ET.ElementTree(new_xml) et.write('test.xml',encoding='utf-8',xml_declaration=True) ################################################################### tree = ET.parse('xml_sample') root = tree.getroot() #创建节点 node = root.makeelement('tagname',{'attr':'value'}) #创建方法2:用类的方法生成(工厂函数) node = ET.Element('name',{"attr":"value"}) #在很节点下添加子节点 root.append(node) #写入文件,并避免自闭合,加上自动生成的注释 tree.write('xml_sample',short_empty_elements=False,xml_declaration=True) #创建ElementTree对象的两个方法 tree = ET.parse(文件路径) tree = ET._ElementTree(根节点(Element对象)) ET.element(标签名,属性) #创建一个element对象,一个element对象就是一个节点 root.append(root.makeelement()#同样在root下创建element对象 ET.SubElement(root,"name",{}))#同样在root下创建Element对象 #要写入中文,加上encoding选项 tree.write('sample',encoding='utf-8') ##################################################### def prettify(root): '''将节点转为字符串,并添加缩进''' rough_str = ET.tostring(root,'utf-8') #minidom模块中的方法,将字符串面为midom中的一个类实例 reparsed = minidom.parseString(rough_string) #使用类的方法,加上缩进,返回字符串 return reparsed.toprettysml(indent='\t') new_str = prettify(root)