zoukankan      html  css  js  c++  java
  • python序列化操作

    对象的序列化在很多高级编程语言中都有相应的实现

    程序运行时候 所有的 变量都是在内存中的

    d=dict(url="index.html",title="首页",content="首页")

    程序运行过程中 爬取的页面的链接 会不断变化

    比如url改成second.html 但是程序一结束 或意外中断 程序中的内存 变量会被操作系统 进行回收。

    如果没有把 修改过的url存储起来  下次运行的时候  url 被初始化为index.html

    -----

    把内存中的变量变成 可存储或可传输的过程 就是序列化

    ------

    将内存中的变量序列化之后   可以把序列化后的内容写入磁盘 或者通过网络传输到别的机器上  实现程序状态的保存和共享。

    反过来 把变量内容从序列化的对象重新读取到内存 称为 反序列化

    ------

    Python    cPickle   pickle实现序列化

    前者是c写的  效率比后者高很多 但是功能是一样的

     先导入cPickle模块 如果不存在 再导入  pickle 模块

    --------

    try:
    import cPickle as pickle
    except ImportError:
    import pickle

    ------、--------------

    pickle实现序列化 主要使用的 是 dumps方法  或dump方法

    dumps方法 可以将任意对象序列化为一个str  然后将这个str写入文件进行保存

    --------

    dump 转储

    -------

    不同的编程语言之间传递对象 把 对象序列化为标准格式是关键  例如XML

    但是现在更加流行的是序列化为JSON格式 

    既可以被所有的编程语言读取解析

    也可以方便地存储到磁盘 或者通过网络传输

    ------

  • 相关阅读:
    Mybatis如何插入空字段
    为什么要将action实例设置为多例
    hibernate dynamic-update="true"属性不起作用原因(转载)
    查找到匹配的进程并关闭 linux ps -ef
    Mac 下解决修改IntelliJ IDEA 由于修改配置之后无法启动问题
    再聊移动端页面的适配
    重学前端
    前端面试
    使用Flexible实现手淘H5页面的终端适配
    vue-cli3.0 使用px2rem 或 postcss-plugin-px2rem
  • 原文地址:https://www.cnblogs.com/yizhixuepython/p/9262279.html
Copyright © 2011-2022 走看看