python对json的操作

  1. 将字典转为json
def delete_imgData(folder):
    files = os.listdir(folder)
    for file in files:
        obj = {}
        obj["version"] = "4.5.7"
        obj["flags"] = {}
        obj["shapes"]=[]


        bbs_xyxy = get_bbs(os.path.join(folder,file))

        for bb in bbs_xyxy:
            obj["shapes"].append({"label":bb[0],
                                  "points":[
                                            [
                                              bb[1],
                                              bb[2]
                                            ],
                                            [
                                              bb[3],
                                              bb[4]
                                            ]
                                          ],
                                  "group_id": None,
                                  "shape_type": "rectangle",
                                  "flags": {}
                                  })

        obj["imagePath"] = "..\\" + file[:-3]+"bmp"
        obj["imageData"] = None
        obj["imageHeight"] = 2160
        obj["imageWidth"] = 3840

        print("json" + "\\" + file[:-3]+"json")
        open("json" + "\\" + file[:-3]+"json", "w").write(
            json.dumps(obj, indent=2, separators=(',', ': '))
        )

2.读取json文件

def delete_imgData(folder):
    # subFolders = os.listdir(folder)

    # for subFolder in subFolders:
    # files = os.listdir(os.path.join(folder, subFolder))

    files = os.listdir(folder)
    for file in files:
        obj = json.load(open(os.path.join(folder, file)))
        print(type(obj["flags"]))
        if obj["imageData"]==None:
            continue
        obj["imageData"]=None
        print("running.....")
        open(os.path.join(folder, file), "w").write(
            json.dumps(obj,indent=2, separators=(',', ': '))
        )
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
以下是Python操作JSON的示例代码: 1. 将Python对象编码为JSON字符串 ```python import json # 将字典编码为JSON字符串 dict1 = {'A': 'a', 'B': 'b', 'C': 'c'} en_json = json.dumps(dict1) print(type(en_json), en_json) # 将列表编码为JSON字符串 lst = ['aa', 'bb', 'cc'] lst_json = json.dumps(lst) print(type(lst_json), lst_json) # 将字符串编码为JSON字符串 s = 'I love you!' s_json = json.dumps(s) print(type(s_json), s_json) # 注意:集合类型的对象是不可以JSON序列化的 _set = {'aaa', 'bbb'} # set_json = json.dumps(_set) # 报错:TypeError: Object of type set is not JSON serializable ``` 2. 将JSON字符串解码为Python对象 ```python import json # 将JSON字符串解码为字典 en_json = '{"A": "a", "B": "b", "C": "c"}' de_json = json.loads(en_json) print(type(de_json), de_json) # 将JSON字符串解码为列表 lst_json = '["aa", "bb", "cc"]' de_json = json.loads(lst_json) print(type(de_json), de_json) # 将JSON字符串解码为字符串 s_json = '"I love you!"' de_json = json.loads(s_json) print(type(de_json), de_json) # 注意:集合类型的对象是不可以JSON序列化的 # set_json = '{"aaa", "bbb"}' # de_json = json.loads(set_json) # 报错:Expecting property name enclosed in double quotes: line 1 column 2 (char 1) ``` 3. 使用eval()解析JSON字符串(不推荐使用) ```python import json # 使用eval()解析JSON字符串 en_json = '{"X": "x", "Y": "y", "Z": "z"}' de_json = eval(en_json) print(type(de_json), de_json) ```
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值