python批量修改json文件中的指定字符
win10
在linux里一行代码就可以直接替换,但是windows我没找到这个功能,就只能用python了
代码如下:
实现了遍历目录下所有json文件,然后替换所有标签为A的label,把A替换为B
import json
import os
path = 'D:\\xxx\\hf'
dirs = os.listdir(path)
num_flag = 0
for file in dirs: # 循环读取路径下的文件并筛选输出
if os.path.splitext(file)[1] == ".json": # 筛选csv文件
num_flag = num_flag +1
print("path ===== ",file)
# print(os.path.join(path,file))
with open(os.path.join(path,file),'r') as load_f:
load_dict = json.load(load_f)
n=len(load_dict['shapes'])
for i in range (0,n):
if load_dict['shapes'][i]['label'] == 'A':
load_dict['shapes'][i]['label'] = 'B'
# if load_dict['shapes'][i]['label'] == 'interstice':
# load_dict['shapes'][i]['label'] = 'cleft'
with open(os.path.join(path,file),'w') as dump_f:
json.dump(load_dict, dump_f)
if(num_flag == 0):
print('所选文件夹不存在json文件,请重新确认要选择的文件夹')
else:
print('共{}个json文件'.format(num_flag))
初学者,所以可能用的循环运行比较慢,有好的方法大家请指点
版权声明:本文为weixin_43688831原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。