加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

day21 xml模块 ATM+购物车

发布时间:2020-12-16 23:40:11 所属栏目:百科 来源:网络整理
导读:1. xml模块 father name="jack" # 属性的值必须加双引号 son 标签的关闭顺序,与开启顺序相反,最先开启的最后关闭,最后开启的,最后关闭 /son /father 根标签只能有一个 JAVA的配置文件很多用XML格式写的 HTNL也属于 XML 1.什么是 xml 是可扩展的标记语言 标记

1. xml模块

<father name="jack"> # 属性的值必须加双引号 <son> 标签的关闭顺序,与开启顺序相反,最先开启的最后关闭,最后开启的,最后关闭 </son> </father> 根标签只能有一个 JAVA的配置文件很多用XML格式写的 HTNL也属于XML 1.什么是xml 是可扩展的标记语言 标记就是标签,用标签来组织数据的语言 也是一种语言,可以用来自定义文档结构 相比json,使用场景更加广泛,但是语法格式相比jason复杂很多 什么时候使用json 前后台需要交互数据时,使用jason 什么时候使用xml 当需要自定义文档结构时,使用xml 比如java中,经常使用xml文件来作为配置文件 作为配置文件,常见操作就是通过程序去读取配置信息 而修改增加删除,一般是交给用户来手动完成 # 标签的叫法,node(节点),element(元素),tag(标签) #需求:从countrys读取内容 from xml.etree.ElementTree as ET # 取别名,可以用于简化书写 tree = ET.parse(‘countrys‘) root = tree.getroot() #获取根标签

第一种获取标签的方式iter()

全文查找,在整个树上都查找一遍
    print(root.iter()) # 获取迭代器,如果不指定参数,则迭代器迭代的是所有标签 print(root.iter("country")) # 如果指定参数,则迭代器迭代的是所有名称匹配的标签

第二种获取标签的方式find()

root.find(‘country‘) #在当前标签下寻找第一个名称匹配的标签 root.find(‘rank‘) # 在当前标签下(所有子级标签),寻找第一个名称匹配的标签

第三种获取标签的方式 findall()

在当前标签下(所有子级标签),查找所有名称匹配的标签
    root.findall(‘rank‘) # 取不到内容,只找一层内容 1.拿到所有国家标签 for e in root.iter("country") print(e.tag) 标签的名称 print(e.attrib) 标签的属性(字典类型) print(‘e.text‘) 文本信息 if e.attrib[‘name‘] == ‘Singapore‘ y = e.find("year") print(y) 在程序中修改文档内容 把所有year标签的文本加1 for e in root.iter("year") e.text = str(int(e.text) + 1) #做完修改后要将修改后的内容写入文件 tree.write("countrys") #把新加坡删除 for e in root.findall(‘countrys‘): if e.attrib[‘name‘] == ‘Singapore‘: # 删除时,要通过被删除的父级标签来删除 root.remove(e) tree. write(‘countrys2‘) #用程序将中国的信息写入文档中 添加时 也需要将要添加的数据做成一个Element标签 c = ET.Element("country",{"name":"china"}) # 在国家下添加一堆子标签 rank = ET.Element("rank",{"update":"yes"}) c.append(rank) year = ET.Element("year") year.text = 2018 c.append(year) root.append(c) # 先把要增加的数据写成xml格式,然后添加,一般不会通过程序增删改 import xml.etree.ElementTree as ET #创建根标签 root = ET.Elment(‘root‘) root.text(‘这是一个xml文档‘) res = ET.dump(root) # 把一个元素和他的子级元素都显示在stdout上 c = ET.Element(‘country‘,{‘name‘:‘china‘}) root.append(c) tree = ET.ElementTree(root) # 参数:文件名称,编码方式,是否需要文档说明 tree.write(‘new_xml‘,encoding = ‘utf-8‘,xml_declaraiton = True)

什么时候应该使用xml格式,前后台交互不应该使用

当你需要自定义文档结构时(XML最强大的地方就是结构)

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读