zoukankan      html  css  js  c++  java
  • python和文件相关操作json、pickle

    1.json

    内存操作:json.dumps()和json.loads()

    json.dumps()是将一个Python数据类型转化为字符串

    json.loads()是将字符串转化为原先的数据类型(与json.dumps()是互逆操作,还原json.dumps()转化时的数据类型)

    文件操作:json.dump()和json.load()

    json.dump()保存为文件

    json.load()加载文件

    import json
    dict={}
    dict['word']=1
    dict['word1']=3
    dict['word2']=5
    dict['word3']=15
    path='word.json'
    #保存json文件
    with open(path,'w') as f:
        json.dump(dict,f)
    #加载json文件
    with open(path,'r') as f:
        dic=json.load(f)
    
    list=[1,3,4]
    data=json.dumps(list)#将list转化为str
    list=json.loads(data)#将str转化为list
    data=json.dumps(dict)#将dict转化为str
    dict=json.loads(data)#将str转化为dict

    2.pickle

    内存操作:pickle.dumps()和pickle.loads()

    pickle.dumps()是将一个Python数据类型转化为二进制

    pickle.loads()是将二进制转化为原先的python数据类型(与pickle.dumps()是互逆操作,还原pickle.dumps()转化时的数据类型)

    文件操作:pickle.dump()和pickle.load()

    pickle.dump()保存为文件

    pickle.load()为加载文件

    import pickle
    dict={}
    dict['word']=1
    dict['word1']=3
    dict['word2']=5
    dict['word3']=15
    
    dict1={}
    dict1['word']=1
    dict1['word0']=3
    dict1['word2']=5
    dict1['word3']=12
    path='word.pkl'#文件名可以不是以.pkl结尾
    #将dict和dict1保存为二进制文件
    with open(path,'wb') as f:
        pickle.dump((dict,dict1),f)
        # pickle.dump(dict,f) #仅仅存储dict对应的格式
    #pickle文件
    with open(path,'rb') as f:
        dict, dict1=pickle.load(f)
    
    
    list=[1,3,4]
    data=pickle.dumps(list)#转化为二进制
    list=pickle.loads(data)#还原为原先的数据类型
    print(list)
  • 相关阅读:
    PAT 甲级1135. Is It A Red-Black Tree (30)
    AVL树模板
    定时器模板
    Listview模板
    Hash二次探测
    BFS小结
    STL之set篇
    完全二叉树-已知中序排序,输出广度排序
    BZOJ2037: [Sdoi2008]Sue的小球
    poj1157LITTLE SHOP OF FLOWERS
  • 原文地址:https://www.cnblogs.com/AntonioSu/p/12084593.html
Copyright © 2011-2022 走看看