• 序列化


    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无法使用

  • 相关阅读:
    ArrayList 和LinkedList
    Java集合复习
    Android 自定义View 例子一
    ant或perl混淆,打多渠道包,此jar包含证书链未验证的条目 无法签名的问题解决办法
    back键彻底关闭应用程序
    Android中View绘制流程
    XCode的快捷键
    Android系统的设计模式
    AsyncTask和Handler
    Android使用软引用和弱引用
  • 原文地址:https://www.cnblogs.com/mk-lovefreedom/p/10565955.html
Copyright © 2020-2023  润新知