欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Python中Json和其他類型相互轉(zhuǎn)換的實現(xiàn)示例

 更新時間:2025年08月21日 11:22:55   作者:一個小坑貨  
本文介紹了在Python中使用json模塊實現(xiàn)json數(shù)據(jù)與dict、object之間的高效轉(zhuǎn)換,包括loads(), load(), dumps(), dump()方法,以及文件讀寫操作,感興趣的可以了解一下

項目中經(jīng)常會用到json格式轉(zhuǎn)為object對象、dict字典格式等。在此做個記錄,方便后續(xù)用到該方法可以快速復(fù)制粘貼。
需要用到json包。

  • loads():將json數(shù)據(jù)轉(zhuǎn)換成為dict字典數(shù)據(jù)
  • load(): 讀取json文件數(shù)據(jù),轉(zhuǎn)成dict數(shù)據(jù)
  • dumps():將dict數(shù)據(jù)轉(zhuǎn)化成json數(shù)據(jù)
  • dump(): 將dict數(shù)據(jù)轉(zhuǎn)換成為json數(shù)據(jù)之后再寫入json文件
"""
@Description: json和其他類型之間互轉(zhuǎn)
"""
import json
import os

class JsonToOtherType:
    """
    @ClassName: JsonToOtherType
    @Description: Json數(shù)據(jù)和其他數(shù)據(jù)之間互轉(zhuǎn)
        loads():將json數(shù)據(jù)轉(zhuǎn)換成為dict字典數(shù)據(jù)
        load():讀取json文件數(shù)據(jù),轉(zhuǎn)成dict數(shù)據(jù)
        dumps():將dict數(shù)據(jù)轉(zhuǎn)化成json數(shù)據(jù)
        dump():將dict數(shù)據(jù)轉(zhuǎn)換成為json數(shù)據(jù)之后再寫入json文件
    """
    def __init__(self):
        """
        @Description:
        """
        pass

    # 設(shè)置為靜態(tài)方法
    @staticmethod
    def dict_to_json(dict_data:dict):
        """
        @Description: dict字典轉(zhuǎn)json數(shù)據(jù)
        :param dict_data 字典數(shù)據(jù)
        :return json_data 返回json類型數(shù)據(jù)
        """
        try:
            json_data = json.dumps(dict_data)
        except Exception as e:
            return e
        return json_data

    @staticmethod
    def obj_to_json(obj_data:object):
        """
        @Description: 對象轉(zhuǎn)json數(shù)據(jù)
            obj.__dict__:將對象轉(zhuǎn)換成為dict字典類型
            json.dumps():再將字典類型轉(zhuǎn)化為json數(shù)據(jù)
        :param obj_data 對象數(shù)據(jù)
        """
        try:
            dict_data = obj_data.__dict__
            #轉(zhuǎn)換dict字典類型
            json_data = json.dumps(obj=dict_data)
        except Exception as e:
            return e
        return json_data

    @staticmethod
    def json_to_dict(json_data:str):
        """
        @Description: json數(shù)據(jù)轉(zhuǎn)換成為dict字典數(shù)據(jù)
        :param json_data json數(shù)據(jù)
        :return dict_data 返回dict字典數(shù)據(jù)
        """
        try:
            dict_data = json.loads(s=json_data)
        except Exception as e:
            return e
        return dict_data

    @staticmethod
    def json_to_obj(json_data:str,obj:object):
        """
        @Description: json數(shù)據(jù)轉(zhuǎn)換成為obj對象
            1.先將json數(shù)據(jù)轉(zhuǎn)換成為dict字典數(shù)據(jù)
            2.再將字典數(shù)據(jù)轉(zhuǎn)換成為obj對象
        :param json_data json數(shù)據(jù)
        :param obj 需要轉(zhuǎn)換的obj對象
        :return obj 返回的對象
        """
        try:
            dict_data = json.loads(s=json_data)
            obj.__dict__ = dict_data
        except Exception as e:
            return e
        return obj

    @staticmethod
    def dict_to_json_write_file(dict_data:dict,filepath:str,filename:str):
        """
        @Description: 將dict數(shù)據(jù)轉(zhuǎn)換成為json數(shù)據(jù)之后再寫入json文件
            dump():將dict數(shù)據(jù)轉(zhuǎn)換成為json數(shù)據(jù)之后再寫入json文件
        :param dict_data 字典數(shù)據(jù)
        :param filepath 文件路徑
        :param filename 文件名字
        """
        try:
            with open (os.path.join(filepath,filename),'w',encoding='utf-8') as f:
                # 會在對應(yīng)路徑下生成一個filename名字的文件,文件內(nèi)容是dict字典數(shù)據(jù)轉(zhuǎn)換成的json數(shù)據(jù)
                json.dump(dict_data,f)
        except Exception as e:
            return e

    @staticmethod
    def json_file_to_dict(filepath:str,filename:str):
        """
        @Description: 讀取json文件中的數(shù)據(jù),將文件內(nèi)容轉(zhuǎn)換成為dict字典數(shù)據(jù)
            load():讀取json文件數(shù)據(jù),轉(zhuǎn)成dict數(shù)據(jù)
        :param filepath 文件路徑
        :param filename 文件名字
        :return dict_data 返回的字典數(shù)據(jù)
        """
        try:
            with open(os.path.join(filepath,filename),'r',encoding='utf-8') as f:
                dict_data = json.load(fp=f)
        except Exception as e:
            return e
        return dict_data

到此這篇關(guān)于Python中Json和其他類型相互轉(zhuǎn)換的實現(xiàn)示例的文章就介紹到這了,更多相關(guān)Python Json和其他類型相互轉(zhuǎn)換內(nèi)容請搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家! 

相關(guān)文章

最新評論