Python入门题030生成思维导图
题目:
使用 lxml 生成 Freemind(.mm)格式的思维导图
视频教程:
Python入门题030:生成思维导图
代码1: from lxml import etree # 创建根节点 map = etree.Element("map") map.set("version", "1.0.1") # 创建主题节点 root: etree.ElementBase = etree.Element("node") root.set("TEXT", "安徒生") map.append(root) # 创建主题的子节点(1级节点) node1: etree.ElementBase = etree.Element("node") node1.set("TEXT", "节点1") root.append(node1) # 创建主题的子节点(1级节点) node2: etree.ElementBase = etree.Element("node") node2.set("TEXT", "节点2") root.append(node2) # 创建子节点的子节点(2级节点) node1child1: etree.ElementBase = etree.Element("node") node1child1.set("TEXT", "节点1的子节点1") node1.append(node1child1) # 创建子节点的子节点(2级节点) node1child2: etree.ElementBase = etree.Element("node") node1child2.set("TEXT", "节点1的子节点2") node1.append(node1child2) # 转换成 str,方便导出 map_bytes = etree.tostring(map, pretty_print=True) with open("mymind.xml", "w+b") as fp: fp.write(map_bytes) # 导出到 .mm 格式的文件中 with open("mymind.mm", "w+b") as fp: fp.write(map_bytes)