• day5 常用模块json和pickle


    json 和 pickle

        json和pickle是用于字符串序列化和反序列化的过程,我们在存储和使用的时候,经常把列表存入文件,读取的时候我们还想以列表的形式读取。就需要使用json和pickle。json是支持所有的接口,pickle是python自己内置的接口。

        用于序列化的两个模块

        (1)json,用于字符串和python数据类型间进行转换

        (2)pickle,用于python特有的类型和python的数据类型间进行转换

        Json模块提供了四个功能:dumps、dump、loads、load

        pickle模块提供了四个功能:dumps、dump、loads、load

        json模块的方法:

        (1)dump()

        def dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
        allow_nan=True, cls=None, indent=None, separators=None,
        default=None, sort_keys=False, **kw):
        """Serialize ``obj`` as a JSON formatted stream to ``fp`` (a
        ``.write()``-supporting file-like object)

        dump(obj,fp)是向文件中写入信息,dump()是首先将obj转化为字符串格式,文件识别的内容,然后写入文件中。

        (2)dumps(obj)

        def dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True,
        allow_nan=True, cls=None, indent=None, separators=None,
        default=None, sort_keys=False, **kw):
        """Serialize ``obj`` to a JSON formatted ``str``.

        dumps()是把其他格式转化为文件可识别的字符格式,因为我们知道,字符串才能写入字典当中,列表,字典,元组是不能直接写入文件中。

        (3)load()

        def load(fp, cls=None, object_hook=None, parse_float=None,
        parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):
        """Deserialize ``fp`` (a ``.read()``-supporting file-like object containing
        a JSON document) to a Python object.
          

        load()是从文件中读取json.dump()存入的文件信息,并把字符串进行转换,从文件中读取信息并进行转换。

        (4)loads()

        def loads(s, encoding=None, cls=None, object_hook=None, parse_float=None,
        parse_int=None, parse_constant=None, object_pairs_hook=None, **kw):
        """Deserialize ``s`` (a ``str`` instance containing a JSON
        document) to a Python object.

        loads()是把字符串转化为原本的格式,比如dumps(),dump()存进去的字符串,反解成原来的格式。

        pickle模块和json功能是一样的,只不过pickle()是Python中内置的模块。

  • 相关阅读:
    程序员的健康问题
    比特币解密
    浅谈比特币
    一款能帮助程序员发现问题的软件
    微软为什么总招人黑?
    写了一个bug,最后却变成了feature,要不要修呢?
    不管你信不信,反正我信了
    Excel工作表密码保护的破解
    pip笔记(译)
    super
  • 原文地址:https://www.cnblogs.com/gengcx/p/6911248.html
Copyright © 2020-2023  润新知