#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模块的更多相关文章

  1. python之json、pickle模块

    一.json模块 之前我们学习过用eval内置方法可以将一个字符串转成python对象,不过,eval方法是有局限性的,对于普通的数据类型,json.loads和eval都能用,但遇到特殊类型的时候, ...

  2. python(6)- json和pickle模块

    这是用于序列化的两个模块: json: 用于字符串和python数据类型间进行转换 pickle: 用于python特有的类型和python的数据类型间进行转换 Json模块提供了四个功能:dumps ...

  3. python基础-json、pickle模块

    json.pickle区别 总结: """ json: 1.不是所有的数据类型否可以序列化,序列化返回结果为字符串 2.不能多次对同一文件序列化 3.json数据可以跨语 ...

  4. python 之 json 与pickle 模块

    序例化:将对象转换为可通过网络传输或可以存储到本地磁盘的数据格式(如:XML.JSON或特定格式的字节串)的过程称为序列化:反之,则称为反序列化. 1.[JSON] import json dic={ ...

  5. Python之时间模块、random模块、json与pickle模块

    一.时间模块 1.常用时间模块 import time # 时间分为三种格式 #1.时间戳---------------------以秒计算 # start= time.time() # time.s ...

  6. python模块(json和pickle模块)

    json和pickle模块,两个都是用于序列化的模块 • json模块,用于字符串与python数据类型之间的转换 • pickle模块,用于python特有类型与python数据类型之间的转换 两个 ...

  7. Python json和pickle模块

    用于序列化的两个模块 json,用于字符串 和 python数据类型间进行转换 pickle,用于python特有的类型 和 python的数据类型间进行转换 Json模块提供了四个功能:dumps. ...

  8. python常用模块之json、pickle模块

    python常用模块之json.pickle模块 什么是序列化? 序列化就是把内存里的数据类型转换成字符,以便其能存储到硬盘或者通过网络进行传输,因为硬盘或网络传输时只接受bytes. 为什么要序列化 ...

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

    一.time与datetime模块 time模块: 时间戳:表示的是从1970年1月1日00:00:00开始按秒计算的偏移量,返回类型为float类型 格式化时间字符串(Format String) ...

随机推荐

  1. 数据挖掘算法——Apriori算法

    Apriori算法  首先,Apriori算法是关联规则挖掘中很基础也很经典的一个算法. 转载来自:链接:https://www.jianshu.com/p/26d61b83492e 所以做如下补充: ...

  2. 执行Python出现LookupError: unknown encoding: cp65001解决办法

    执行Python出现LookupError: unknown encoding: cp65001错误 dos下执行以下命令即可 chcp 以上.

  3. C#からネイティブDLLを呼び出す場合のVSからのデバッグのジレンマを解決する

    「C#を使う最大のメリットって.やっぱり.Visual Studioですよね!」って自信を持って言いたいですね. という心境ではあるんですが.私の仕事はどっちかというとC++よりなので.どうしても.D ...

  4. 最优装载—dp

    最优装载—dp 动态规划 一 问题描述 二 问题分析 三 代码实现 package dp_Loading; import java.io.BufferedWriter; import java.io. ...

  5. [BOI2007]Mokia 摩基亚

    Description: 摩尔瓦多的移动电话公司摩基亚(Mokia)设计出了一种新的用户定位系统.和其他的定位系统一样,它能够迅速回答任何形如"用户C的位置在哪?"的问题,精确到毫 ...

  6. 04-Python入门学习-流程控制

    一.流程控制if 语法1: if 条件:  code1  code2  code3  .... age=180 height=163 weight=75 sex='female' is_beautif ...

  7. LOJ #6303. 水题 (约数 质因数)

    #6303. 水题 内存限制 10 MiB 时间限制:1000 ms 标准输入输出 题目描述 给定正整数 n,kn, kn,k,已知非负整数 xxx 满足 n!modkx=0,求 xmaxx_{max ...

  8. MyISAM和Innodb区别,为什么?

    事务支持 MyISAM不支持事务,而InnoDB支持. InnoDB的AUTOCOMMIT默认是打开的,即每条SQL语句会默认被封装成一个事务,自动提交,这样会影响速度, 所以最好是把多条SQL语句显 ...

  9. TP5在前端时间戳转换为时间格式

     value="{:date('Y-m-d H:i:s',$data['add_date'])}"  例如: <td>{:date('Y-m-d H:i:s',$d[' ...

  10. java基础 第八章课后习题

    1.什么是二重循环?在内层循环中使用continue和break语句,程序如何跳转? 答:二重循环就是一个循环结构体内又包含另一个完整的循环结构. continue语句跳转时是跳过了内层循环中的剩余语 ...