zoukankan      html  css  js  c++  java
  • Python--day20--序列化模块

    序列化:转向一个字符串数据类型

    序列     ————  字符串

    序列化和反序列化的概念:

    序列化三种方法:json  pickle  shelve

    json模块:json模块提供了四个方法dumps和loads、dump和load

    json  dumps序列化方法(将其他数据类型转化成字符串类型)  loads反序列化方法

    dumps和loads直接操作内存中的数据类型

    json  loads反序列化方法(将字符串类型转回原来的类型)

    json可以进行序列化的数据类型有:数字、字符串、列表、字典、元组

    json  dump序列化方法(对文件进行操作)  load反序列化方法(对文件进行操作)

    dump和load是往文件里面写和从文件中读,是一次性读完或一次性写完,如果文件中有多个字典就会报错

    json  load反序列化方法(对文件进行操作)

    解决中文dump序列化时往文件中写的是bytes类型的问题:

    输出:

    解决方法:

    文件中多个字典的数据的读和写:

    写:

    读:

    pickle模块:(只有Python可以使用)和json模块一样提供了四个方法dumps和loads、dump和load

    picke的dumps和loads方法

    picke的dump和load方法

    对于pickle可以分步地dump和load,而对于json就不行了,json不直接支持

    shelve模块:写时直接对文件句柄进行操作,取出数据时也只需要直接用key获取即可(自己从文件中也看不出来写了什么)    (和json、pickle都不一样

    总结:只有json在文件中的数据对我们来说是透明的,pickle和shelve在文件中的数据对我们来说是看不懂的

    wirteback:

  • 相关阅读:
    使用Node.js创建第一个应用
    Node.js安装
    Node.js简介
    c#中的索引器
    ASP.NET常用内置对象(三)Server
    ASP.NET常用内置对象(二)Response
    ASP.NET常用内置对象(一)Request
    利用JDBC工具类 模拟用户登录!
    JDBC工具类完整版!
    用户登录
  • 原文地址:https://www.cnblogs.com/xudj/p/9834313.html
Copyright © 2011-2022 走看看