Python内置库:json和pickle(数据序列化)
发布时间:2020-12-20 10:07:02 所属栏目:Python 来源:网络整理
导读:Python中的json模块和pickle都是用于数据的序列化和反序列化,它们提供的方法也是一样的:dumps,dump,loads,load dumps(obj): 将对象 序列化 为str。 dump(obj,fp): 将对象 序列化 为str,并存入文件中。 loads(s): 将(序列化后的)字符串 反序列化
Python中的json模块和pickle都是用于数据的序列化和反序列化,它们提供的方法也是一样的:dumps,dump,loads,load
json和pickle模块虽然都是用于数据的序列化和反序列化,但它们之间还是有许多区别的,或者说各有各的优点和缺点:
以下是pickle文件操作的一个简单示例: >>> import pickle
>>> dic = {'a': 111,'b': 222,'c': 333}
>>> f = open('D:/pk_file.pk','wb')
>>> lst = [1,2,4,5]
>>> # 将字典对象和列表对象序列化,并存入文件,文件名后缀自定义为.pk
>>> pickle.dump(dic,f)
>>> pickle.dump(lst,f)
>>> f.close()
>>> # 将文件中的Python对象按写入顺序读取出来,且一次读取一个对象
>>> pk_f = open('D:/pk_file.pk','rb')
>>> result = pickle.load(pk_f)
>>> type(result)
<class 'dict'>
>>> result
{'a': 111,'c': 333}
>>> other_result = pickle.load(pk_f)
>>> type(other_result)
<class 'list'>
>>> other_result
[1,5]
>>>
? (编辑:李大同) 【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容! |