zoukankan      html  css  js  c++  java
  • 序列化

    JSON

    json是内置函数,用于多种语言交互,编程语言通用数据

    import  json  # 导入json模块

    dic = {':2}

    dumps:  将字典转换成字符串

    s = json.dumps(dic)   # 将字典对象转换成字符串
    print(type(s))

    loads: 将字符串转换成字典

    di = '{"1":2}'
    d = json.loads(di)    # 将字符串转换成字典
    print(d)
    print(type(d))

    dump:将字典转换字符串写入到文件中

    json.dump({'1':4},open('a','w',encoding='utf-8'))

    load:将文件中的字符串转换成字典

    d = json.load(open('a','r',encoding='utf-8'))
    print(d)

    总结:
    json.load()    #参数文件句柄(r), 将文件中字符串转换成字典
    json.dump()   #对象(字典),文件句柄(w) 将字典转换字符串写入到文件中
    json.dumps()   #对象(字典) 将字典转换成字符串
    json.loads()   #字符串(字典) 将字符串转换成字典

    pickle

    pickle模块是python中特有的模块,只支持Python使用

    dumps:    将对象转换成类似二进制的东西
    import pickle    # 导入模块

    print(pickle.dumps({'1':4})) #将对象转换成类似二进制的东西

    dump:    将字典转换成字节写入到文件中

    pickle.dump({'2':4},open('b','wb'))

    loads:    将一个堆类似于二进制的东西转换成字典

    print(pickle.loads(b'x80x03}qx00Xx01x00x00x001qx01Kx04s.'))

    load:    将文件中的字节转换成字典

    d = pickle.load(open('b','rb'))

    # 总结:
    # josn,pickle 对比

    # loads     json里的将字符串转换成字典            pickle 将字节转换成字典
    # dumps   json里的将字典转换成字符串            pickle 将字典转换成字节
    # load      json里的将文件中的字符串转换成字典         pickle 将文件中的字节转换成字典
    # dump    json里的将字典转换字符串写入到文件中,    pickle 将字典转换成字节写入到文件中

    shelve

    #  文件+字典操作

    import shelve     # 模块导入

    f = shelve.open('c',writeback=True) #创建文件 # writeback = True 回写

    可以使用writeback强制写入

    然后我们可以对f进行字典方法操作,但是keys,values无法使用

  • 相关阅读:
    (转)写好程序注释的十三条建议
    注册表添加NoDrives隐藏盘符(禁用U盘)参数说明
    AJAX实用教程——开篇
    浅谈函数求解与人生
    C#(服务器)与Java(客户端)通过Socket传递对象
    BI开发之——Mdx基础语法(2)
    UML——序列图
    UML——序列图案例总结
    ORM内核原理解析之:延迟加载
    应用程序系统基本设计原则——SOLID
  • 原文地址:https://www.cnblogs.com/mk-lovefreedom/p/10565955.html
Copyright © 2011-2022 走看看