读取json文件
with open('class.json','r')as fp:
json_data = json.load(fp)
print(len(json_data))
print('这是读取到文件数据的数据类型:', type(json_data))
查看读取到的json文件类型
new_list = sorted(json_data, key=itemgetter('id'))
#由dict组成的列表list排序方式
for i in new_list:
id=i['id']
cls=i['name']
with open('new_class.txt', 'a') as file_handle: # .txt可以不自己新建,代码会自动新建
file_handle.write(str(id)) # 写入只能写str格式
file_handle.write(':"')
file_handle.write(str(cls))
# file_handle.write(',')
file_handle.write('",\n') 符号都可以直接写
几个关键点
1
读取到文件之后要对文件中的数据进行操作,首先要搞清楚文件中的数据类型。
如果读取的是json,读入的可能是list或者dict,list用for遍历。
如果读取的是txt,则读进来的是str格式,可以用spilt分割,来取需要的片段。如果需要对前后顺序进行调换,可以如下操作
原来格式
human, id: 1
处理后的格式
1:"human"
while line:
line=data.readline().strip()
cls='"'+line.split(',')[0]+'"'
id=line.split(': ')[-1]
# with open('class.txt', 'a') as file_handle: # .txt可以不自己新建,代码会自动新建
# file_handle.write(id) # 写入
# file_handle.write(':')
# file_handle.write(cls)
# # file_handle.write(',')
# file_handle.write(',\n')
写入的也是str格式
不要害怕数据读取啊!批量操作yyds!以后切忌用手动方式啊!
2.由dict组成的list可以排序,指定key就可以
new_list = sorted(json_data, key=itemgetter('id'))