因为项目需求,需要读取json文件,然后把文件格式转化成想要的格式。
这是json文件aaa.json:
{"1": "((10,50),(11,20))","2": "((10,50),(11,20))","3": "((10,50),(11,20))","4": "((10,50),(11,20))"}
这是读取:
import json
with open('aaa.json','r',encoding='utf-8') as f:
data = json.load(f)
for i in data:
j = data[i]
s = tuple(eval(j)) #这里用了eval()函数,会去掉‘’
print(s[0][0],'++++++',type(s))
打印结果:
10 ++++++ <class ‘tuple’>
10 ++++++ <class ‘tuple’>
10 ++++++ <class ‘tuple’>
10 ++++++ <class ‘tuple’>
如果没有用eval()函数,结果是:
with open('aaa.json','r',encoding='utf-8') as f:
data = json.load(f)
for i in data:
j = data[i]
s = tuple(j)
print(s,'++++++',type(s))
结果:
(‘(’, ‘(’, ‘1’, ‘0’, ‘,’, ‘5’, ‘0’, ‘)’, ‘,’, ‘(’, ‘1’, ‘1’, ‘,’, ‘2’, ‘0’, ‘)’, ‘)’) ++++++ <class ‘tuple’>
(‘(’, ‘(’, ‘1’, ‘0’, ‘,’, ‘5’, ‘0’, ‘)’, ‘,’, ‘(’, ‘1’, ‘1’, ‘,’, ‘2’, ‘0’, ‘)’, ‘)’) ++++++ <class ‘tuple’>
(‘(’, ‘(’, ‘1’, ‘0’, ‘,’, ‘5’, ‘0’, ‘)’, ‘,’, ‘(’, ‘1’, ‘1’, ‘,’, ‘2’, ‘0’, ‘)’, ‘)’) ++++++ <class ‘tuple’>
(‘(’, ‘(’, ‘1’, ‘0’, ‘,’, ‘5’, ‘0’, ‘)’, ‘,’, ‘(’, ‘1’, ‘1’, ‘,’, ‘2’, ‘0’, ‘)’, ‘)’) ++++++ <class ‘tuple’>