Python基础-json和pickle模块

一 、序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes

把字符串转化成内存数据类型 叫做反序列化

json 和 pickle

二、 只是把数据类型转化成字符串存到内存里的意义

json.dumps  json.loads

1.把你的内存数据通过网络共享给远程其他人

2.定义了不同语言的交互规则

a.纯文本,坏处,不能共享复杂的数据类型

b.xml,坏处,占用空间大

c.json,简单,可读性好

三、json与pickle的区别:

json 支持的数据类型有str int tuple dict  一般在不同语言之间共享数据的时候使用

pickle

支持python里的所有数据类型  只能在python里面使用

四、json 和 pickle 可以dump多次到一个文件,但是load就会报错,一般是一次dump,一次load

原文地址:https://www.cnblogs.com/xudachen/p/8481434.html

时间: 2024-08-21 02:26:37

Python基础-json和pickle模块的相关文章

Python 基础 - 4.8 pickle模块

import pickle d = {"name":"cmz","age":18} l = [1,2,4,5] pk = open("data.pkl","w") print(pickle.dumps(d)) 输出是bytes C:\Python35\python.exe D:/luffy/第二章/pickle测试.py b'\x80\x03}q\x00(X\x03\x00\x00\x00ageq\x01K

python模块(json和pickle模块)

json和pickle模块,两个都是用于序列化的模块 • json模块,用于字符串与python数据类型之间的转换 • pickle模块,用于python特有类型与python数据类型之间的转换 两个模块,都提供了dumps,dump,loads,load 4个功能 1 import json 2 s = '{"key1":"value1","key2":"value2"}' # ==> 用json模块将字符串转化成其他

Python数据对象的编码和解码,json和pickle模块,base64模块的简单使用

1.面向对象 对象:生活中的客观事物 类:对事物的抽象,在代码中实现class类型 类属性:这类事物具有的特点或者属性 类方法:这类事物具有的行为,可以实现的方法 实例:使用之前对类的实例化之后的结果 实例属性:对象具有的一些描述对象或者形容对象的属性,对象具体具有的特性 实例方法:对象具有的方法,行为动作 1.查看对象所拥有的方法 dir(对象) 例如 print(dir(列表))1.类中的实例(类)属性和方法命名风格 属性:名词 方法:动词 2.Python中万物皆对象 _对象名,对象私有化

python基础学习日志day5-各模块文章导航

python基础学习日志day5---模块使用 http://www.cnblogs.com/lixiang1013/p/6832475.html python基础学习日志day5---time和datetime模块 http://www.cnblogs.com/lixiang1013/p/6848245.html python基础学习日志day5---random模块http://www.cnblogs.com/lixiang1013/p/6849162.html python基础学习日志da

json与pickle模块

Python-19 1. json与pickle模块 什么是序列化和反序列化 序列化:是将内存中的数据结构,转换成一种中间格式,将转化后的中间格式存储到硬盘,或者基于网络传输 反序列化:是将硬盘中或者网路中传过来的中间格式,转换成内存中的数据结构 2. 序列化和反序列化有什么用 将状态通过中间格式存储到硬盘,可以保存程序的运行状态 数据可以跨平台交互,不同的编程语言,通过序列化成中间格式就可以互相交互 存到硬盘的文本文件都是字符串,再次使用时,需要将硬盘中的数据转化成以前的数据类型状态 3. j

python-时间模块,random、os、sys、shutil、json和pickle模块

一.time与datetime模块 time模块: 时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,返回类型为float类型 格式化时间字符串(Format String) 结构化的时间(struct_time):struct_time元组共有9个元素(年月日时分秒,一年中的第几周,一年中的第几天,夏令时) # print(time.time())#1533962144.060534 # print(time.localtime())#time.struct_time(

shutil模块、json和pickle模块

shutil模块: 高级的文件.文件夹.压缩包处理模块 json和pickle模块 之前学过eval内置方法可以将一个字符串转化成Python对象,但eval方法是有局限性的,对于普通的数据类型,json.loads.eval都可以使用,但遇到特殊类型的时候,eval就不能使用了, 所以eval的重点通常还是用来执行一个字符串表达式,并返回表达式的值. 序列化:我们把对象从内存中变成可存蓄或可传送的过程称为序列化,在Python中叫picking,在其他语言中叫serialization .ma

python 之序列化(pickle模块和json模块)

#!/usr/bin/env python # -*- coding: utf-8 -*- ''' 序列化(pickle)和json 1.什么是序列化? 序列化可以把一个对象(比如列表.字典都是对象),通过python特有的机制序列化一下. 也就是当作是以二进制的形式给它加密一下(特殊二进制的方式加密一下),这个过程就是序列化 并且对一个对象序列化(比如类.列表.字典)之后,可以进行反序列化. ''' import pickle,json li = ['tantianran',11,22,'ok

Python 基础 - Json文件读写

JSON介绍 JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式.它基于ECMAScript的一个子集. JSON采用完全独立于语言的文本格式,但是也使用了类似于C语言家族的习惯(包括C.C++.Java.JavaScript.Perl.Python等).这些特性使JSON成为理想的数据交换语言.易于人阅读和编写,同时也易于机器解析和生成(一般用于提升网络传输速率). 在python中,JSON 由列表和字典组成. 序列化的两个模块中,json模块是用于