博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python 序列化和反序列化(pickle和json)
阅读量:5267 次
发布时间:2019-06-14

本文共 1073 字,大约阅读时间需要 3 分钟。

pickle能序列化常规数据类型(元组、列表、字典、集合等),也可以序列化非常规类型(类、函数等),基本上是所以得数据类型,只能python程序使用。

Python file类型在Python是一个特殊的类型。

json 只能序列化常规类型,任何语言都可以。

###pickle

import pickle

myList = ['hello', 1, 2, 3, 'ok', 'sb']

mydump = pickle.dumps(myList)
print mydump
print type(mydump)
rs = pickle.loads(mydump)
print rs
print type(rs)
pickle.dump(myList, file('F:/python/test.txt', 'w')) //会自动关闭打开的文件
rs = pickle.load(file('F:/python/test.txt', 'r'))
print rs

 

输出:

  (lp0

  S'hello'
  p1
  aI1
  aI2
  aI3
  aS'ok'
  p2
  aS'sb'
  p3
  a.
  <type 'str'>
  ['hello', 1, 2, 3, 'ok', 'sb']
  <type 'list'>
  ['hello', 1, 2, 3, 'ok', 'sb']

###json

import json

myList = ['hello', 1, 2, 3, 'ok', 'sb']

mydump = json.dumps(myList)
print mydump
print type(mydump)
rs = json.loads(mydump)
print rs
print type(rs)
json.dump(myList, file('F:/python/test.txt', 'w'))
rs = json.load(file('F:/python/test.txt', 'r'))
print rs

 

输出:  

  ["hello", 1, 2, 3, "ok", "sb"]

  <type 'str'>
  [u'hello', 1, 2, 3, u'ok', u'sb']
  <type 'list'>
  [u'hello', 1, 2, 3, u'ok', u'sb']

 

转载于:https://www.cnblogs.com/3one/p/5532804.html

你可能感兴趣的文章
latex tree
查看>>
安装NVIDIA驱动时禁用自带nouveau驱动
查看>>
HDU-1255 覆盖的面积 (扫描线)
查看>>
css3学习01
查看>>
【USACO】 奶牛会展
查看>>
继承和多态
查看>>
Dijkstra+计算几何 POJ 2502 Subway
查看>>
修复IE不能执行JS的方法
查看>>
程序员究竟该如何提高效率zt
查看>>
希尔排序法(缩小增量法)
查看>>
PHP编程基础学习(一)——数据类型
查看>>
MongoDB-JAVA-Driver 3.2版本常用代码全整理(2) - 查询
查看>>
NPOI处理Word文本中上下角标
查看>>
Android笔记 Handler
查看>>
如何阅读大型前端开源项目的源码(转)
查看>>
java.util.Arrays类详解
查看>>
idea搭建tocmat
查看>>
NYOJ-626-intersection set(二分查找)
查看>>
项目管理之路(1):初步踏入项目管理
查看>>
Java 中 静态方法与非静态方法的区别
查看>>