一.各模块的主要功能区别 json模块:将数据对象从内存中完成序列化存储,但是不能对函数和类进行序列化,写入的格式是明文.  (与其他大多语言交互的类型) pickle模块:将数据对象从内存中完成序列化存储,可以能对函数进行序列化,写入的格式是二进制格式wb. (支持python的所有数据类型,python特有的) configparser模块:保存字典内容到文件,并按照一定的格式写入文件保存. shelve模块:将对象写入到文件,保存没有格式.(较为轻便好用) xml模块:不同语言或程序之间数…
一.复习 反射 必须会 必须能看懂 必须知道在哪儿用 hasattr getattr setattr delattr内置方法 必须能看懂 能用尽量用__len__ len(obj)的结果依赖于obj.__len__()的结果,计算对象的长度__hash__ hash(obj)的结果依赖于obj.__hash__()的结果,计算对象的hash值__eq__ obj1 == obj2 的结果依赖于obj.__eq__()的结果,用来判断值相等__str__ str(obj) print(obj) '…
python 常用模块 time random os模块 sys模块 json & pickle shelve模块 xml模块 configparser hashlib  subprocess logging re正则 转自老男孩老师Yuan:http://www.cnblogs.com/yuanchenqi/articles/5732581.html 模块&包(* * * * *) 模块(modue)的概念: 在计算机程序的开发过程中,随着程序代码越写越多,在一个文件里代码就会越来越长,…
一.json模块 之前学习过的eval内置方法可以将一个字符串转成一个python对象,不过eval方法时有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候,eval就不管用了.所以eval的重点还是通常用来执行一个字符串表达式,并返回表达式的值. import json x = "[null,true,false,1]" # print(eval(x)) #用eval会报错 print(json.loads(x)) # 用json就不会报错 什…
一,为什么要序列化 # 将原本的字典.列表等内容转换成一个字符串的过程就叫做序列化'''比如,我们在python代码中计算的一个数据需要给另外一段程序使用,那我们怎么给?现在我们能想到的方法就是存在文件里,然后另一个python程序再从文件里读出来.但是我们都知道,对于文件来说是没有字典这个概念的,所以我们只能将数据转换成字典放到文件中.你一定会问,将字典转换成一个字符串很简单,就是str(dic)就可以办到了,为什么我们还要学习序列化模块呢?没错序列化的过程就是从dic 变成str(dic)的…
#序列化模块 #what #什么叫序列化--将原本的字典.列表等内容转换成一个字符串的过程叫做序列化. #why #序列化的目的 ##1.以某种存储形式使自定义对象持久化 ##2.将对象从一个地方传递到另一个地方 ##3.使程序更具有维护性 #str-------------反序列化-------->>>数据结构 #数据结构<<<-------序列化-------------str #json #json模块提供了四个功能:dumps,dump,loads,load #…
一,什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写的代码(.py文件) 2 已被编译为共享库或DLL的C或C++扩展 3 包好一组模块的包 4 使用C编写并链接到python解释器的内置模块 为何要使用模块? 如果你退出python解释器然后重新进入,那么你之前定义的函数或者变量都将丢失,因此我们通常将程序写到文件中以便永久保存下来,需要时就通过pytho…
序列化: 序列化是指把内存里的数据类型转变成字符串,以使其能存储到硬盘或通过网络传输到远程,因为硬盘或网络传输时只能接受bytes. 为什么要序列化: 有种办法可以直接把内存数据(eg:10个列表,3个嵌套字典)存到硬盘上,下次程序再启动,再从硬盘上读回来,还是原来的格式. 1.把内存数据(eg:dict)转成字符串叫 序列化2.把字符串转成内存数据类型叫 反序列化 python模块能自动转换 json pickle 作用:内存得数据很容易存下来,也很容易读回来,因为写到硬盘上只认识str by…
一 什么是 序列化 在我们存储数据或者 网络传输数据的时候,需要对我们的 对象进行处理,把对象处理成方便我们存储和传输的 数据格式,这个过程叫序列化,不同的序列化,结果也不相同,但是目的是一样的,都是为了存储和传输 在 python中存在 三种序列化的 方案 1.pickle,可以将 我们 python 中的 任意数据类型转化成 bytes 并写入到文件中,同样也可以把文件中写好的 bytes 转换成我们 python的 数据,这个过程称为反序列化 pickle 是 python自身独有的 序列…
一.json模块(重点) 一种跨平台的数据格式 也属于序列化的一种方式 介绍模块之前,三个问题: 序列化是什么? 我们把对象(变量)从内存中变成可存储或传输的过程称之为序列化. 反序列化又是什么? 将硬盘上存储的中间格式数据在还原为内存中的数据结构 为什么要序列化? 1.持久保持状态 2.跨平台数据的交互 JSON是什么? java script object notation 就是对象表示法 var obj = {"name":"egon"} 对于我们开发而言 j…