Json读写
0.导入模块
import json
1.读取json
r’xxx.json’中加‘r’ 是为了保持字符串原始值的含义
1.json.load将json文件读取,json.loads将str转化为dict,open打开的文件类型为_io.TextIOWrapper类型,不可以用loads转化
2.json.load读取json文件后自动转为dict类型
fp = open(r'xxx.json', mode = 'r', encoding = 'utf-8')
input_json = json.load(fp)
print(input_json)
2.写入json+保存
json都是以字典形式进行保存,字典中可以嵌入列表,列表中又可嵌入字典
1.json.dumps将python数据结构转化为json,输出为字符串
2.ensure_ascii为True输出ASCLL码,False输出中文
3.indent为缩进参数
dict = {'a':[],'b':[]}
fp = open(r'路径'+'xx.json', mode = 'w', enconding='utf-8')
res = {'title1':[dict]}
fp.write(json.dumps(res, ensure_ascii=False, indent=4))
fp.close()
xml读写
0.导入模块
import xml.etree.ElementTree as ET
1.读取xml
xml = ET.parse('xxx.xml')
tree = xml.getroot()
'''
root结点以类似于列表的遍历方式进行读取,可直接读取,也可以根据索引读取
三大属性tag,attrib,text
tag:结点名字
attrib:结点的属性,字典格式
text:结点的内容
'''
for i in range(len(tree)):
print(tree[i].tag)
print(tree[i].attrib)
print(tree[i].text)
tag关键字可以作为结点的索引对象
# 迭代寻找tag为'area'的结点
for i in tree.iter('area'):
print(i.attrib)
node = tree.find('area') # 寻找tag为'area'的第一个结点,返回该结点的迭代对象
nodes = tree.findall('area') # 寻找所有tag为'area'的结点,返回一个结点集合的xml