python值json与pickle模块
#json 是用来序列化对象的
# 只有2个方法,序列化与反序列化
# 但是不能序列化类 与 函数 import json
dict={"key1":[1,2,3,4,5]}
f = open("json.test","w",encoding="utf8")
dict=json.dumps(dict)
f.write(dict)
f.close()
import json
f = open("json.test","r",encoding="utf8")
dict = json.loads(f.read())
print(dict)
f.close()
# pickle 用来以二进制的形式序列化函数和类的
# "wb" 与“rb”
# 二进制转化不能加字符编码的转化
# picle loads回来的函数对象内存地址找不到了,需要在页面重新声明该函数对象。 def test():
print("ok") import pickle
f = open("pickle.test","wb")
data = pickle.dumps(test)
f.write(data)
f.close()
import pickle # 还原的话需要重新声明该函数对象,因为对象的内存地址在转化的过程中发生了改变了!
def test():
print("ok")
f = open("pickle.test","rb")
data = pickle.loads(f.read())
data() #执行该函数
f.close()
import json
dict={"key1":[1,2,3,4,5]}
f = open("json.test","w",encoding="utf8")
# dict=json.dumps(dict)
# f.write(dict)#
#将上述2步骤进行替换 dump()的区别
json.dump(dict,f)
f.close()
import json
f = open("json.test","r",encoding="utf8")
# dict = json.loads(f.read())
# print(dict)
data=json.load(f)
print(data)
f.close()
# shelve 针对创建的文本内容进行一个修改的时候,这个模块是比较灵活的
# shelve.open("test.txt")
# f.get("shabi","woca") 获取的键值不存在就返回指定的参数,这个很重要,经常使用 import shelve f = shelve.open("test.txt")
f['info'] = {"name":"alex","age":""}
f['zhut'] = {"age":"","shangtai":"关系"}
print(f.get("info")["name"])
print(f.get("shabi","woca"))
python值json与pickle模块的更多相关文章
- python之json、pickle模块
一.json模块 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候, ...
- python(6)- json和pickle模块
这是用于序列化的两个模块: json: 用于字符串和python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 Json模块提供了四个功能:dumps ...
- python基础-json、pickle模块
json.pickle区别 总结: """ json: 1.不是所有的数据类型否可以序列化,序列化返回结果为字符串 2.不能多次对同一文件序列化 3.json数据可以跨语 ...
- python 之 json 与pickle 模块
序例化:将对象转换为可通过网络传输或可以存储到本地磁盘的数据格式(如:XML.JSON或特定格式的字节串)的过程称为序列化:反之,则称为反序列化. 1.[JSON] import json dic={ ...
- Python之时间模块、random模块、json与pickle模块
一.时间模块 1.常用时间模块 import time # 时间分为三种格式 #1.时间戳---------------------以秒计算 # start= time.time() # time.s ...
- python模块(json和pickle模块)
json和pickle模块,两个都是用于序列化的模块 • json模块,用于字符串与python数据类型之间的转换 • pickle模块,用于python特有类型与python数据类型之间的转换 两个 ...
- Python json和pickle模块
用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换 pickle,用于python特有的类型 和 python的数据类型间进行转换 Json模块提供了四个功能:dumps. ...
- python常用模块之json、pickle模块
python常用模块之json.pickle模块 什么是序列化? 序列化就是把内存里的数据类型转换成字符,以便其能存储到硬盘或者通过网络进行传输,因为硬盘或网络传输时只接受bytes. 为什么要序列化 ...
- python-时间模块,random、os、sys、shutil、json和pickle模块
一.time与datetime模块 time模块: 时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,返回类型为float类型 格式化时间字符串(Format String) ...
随机推荐
- datatables隐藏列与createdRow渲染bootstrapSwitch形成的BUG
背景: 昨天写了一个页面用于规则库的增删改查. 数据使用datatables渲染,后端返回数据由前端进行一次性渲染和分页. 隐藏列: 排序的ID不展示,但是排序又想按照ID来排,所以把ID单独作为一列 ...
- web理论知识--网页访问过程(附有Django的web项目访问流程)
当我们闲暇之余想上网看看新闻,或者看个电影,通常的操作是:打开电脑.打开浏览器.输入网址.浏览页面信息.点击自己感兴趣的连接......那么有没有想过,这些网页从哪里来的?过程中计算机又做了什么事情了 ...
- get、put、post、delete含义与区别
1.GET请求会向数据库发索取数据的请求,从而来获取信息,该请求就像数据库的select操作一样,只是用来查询一下数据,不会修改.增加数据,不会影响资源的内容,即该请求不会产生副作用.无论进行多少次操 ...
- mac 配置 ssh 到git (Could not resolve hostname github.com, Failed to connect to github.com port 443 Operation timed out)
1.进入终端命令行 (1)输入:cd .ssh/ 进入到.ssh后,输入ls,会输出“known_hosts”,如果没有创建过rsa的话 (2)输入:man ssh-add (3)输入:ssh-key ...
- javascript 时间函数整理
对Javascript日期的部分函数做个小结: var myDate = new Date();//定义时间函数 myDate.getYear(); //获取当前年份(2位) myDate.getF ...
- Redhat Linux5.4/5.5/5.8/6.0/6.3 ISO镜像文件下载
版本有RedHat Enterprise Linux(RHEL)5.4/5.5/5.8/6.0/6.3 ISO镜像文件下载地址: RHEL 5.4 ISO下载http://rhel.ieesee.ne ...
- Mac_配置jdk环境变量
进入命令行 cd ~ touch .bash_profile vi .bash_profile 输入内容jdk变量配置内容: JAVA_HOME=/Library/Java/JavaVirtualMa ...
- vue_条件渲染_v-if_v-else_v-show
data: { ok: true flag: false } 1. 成对出现的 v-if 和 v-else 原理是: 标签的删除与重新创建 ,有些情况必须用 v-if <p v-if=" ...
- Ehcache 3.7文档—基础篇—XML Configuration
你可以使用xml配置创建CacheManager,根据这个schema definition ( http://www.ehcache.org/documentation/3.7/xsds.html# ...
- ELK之使用packetbeat分析网络包流量
介绍 packbeat是一个开源的实时网络抓包与分析框架,内置了很多常见的协议捕获及解析,如HTTP.MySQL.Redis等.在实际使用中,通常和Elasticsearch以及kibana联合使用, ...