Python 序列化

'''

Python的序列化是指把变量从内存中变为可以储存/传输的数据/文件的过程。

在Python中叫pickling,

序列化之后,就可以把序列化后的内容写入磁盘,或者通过网络传输到别的机器上。

反过来,把变量内容从序列化的对象重新读到内存里称之为反序列化,即unpickling

'''

#1,dumps()与loads()

import pickle

data = {'k1':123, 'k2': 'Hello'}

p_str = pickle.dumps(data) #注意dumps会把Python数据类型转换为bytes格式

print(p_str)

s = pickle.loads(p_str)#注意loads会把bytes转为Python的数据类型

print(s)

print('============================================================')

#2,dump()与load()

data = {'k1':123,'k2':'Hello'}

#pickle.dump 将Python数据转换并保存到pickle格式的文件内

with open('result.pk',"wb") as fp:

    pickle.dump(data,fp)

#pick.load 从pickle格式的文件中读取数据并转换为Python的类型

f = open("result.pk","rd")

d = pickle.load(f)

print(d)

'''

在我们使用内置打印函数print时,打印出的Python数据结构对象总是一行的输出方式,

这样对数据结构较复杂或数据较多的对象的显示并不美观,

这时我们可以利用pprint输出美化数据结构对象。

'''

from pprint import pprint

#pprint模块包含一个美观打印器(prettyprinter),用于产生美观的数据结构图

#格式化程序生成可以由解释器正确解析的数据结构,并且容易使人阅读

data = [

    (1, {'a': 'A', 'b': 'B', 'c': 'C', 'd': 'D'}),

    (2, {'e': 'E', 'f': 'F', 'g': 'G', 'h': 'H',

         'i': 'I', 'j': 'J', 'k': 'K', 'l': 'L'}),

    (3, ['m', 'n']),

    (4, ['o', 'p', 'q']),

    (5, ['r', 's', 't''u', 'v', 'x', 'y', 'z']),

]

print('PRINT:')

print(data)

print()

print('PPRINT:')

pprint(data)

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值