Python基础中如何使用json与pickle(一)_python jsonpickle

如果你也是看准了Python,想自学Python,在这里为大家准备了丰厚的免费学习大礼包,带大家一起学习,给大家剖析Python兼职、就业行情前景的这些事儿。

一、Python所有方向的学习路线

Python所有方向路线就是把Python常用的技术点做整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照上面的知识点去找对应的学习资源,保证自己学得较为全面。

二、学习软件

工欲善其必先利其器。学习Python常用的开发软件都在这里了,给大家节省了很多时间。

三、全套PDF电子书

书籍的好处就在于权威和体系健全,刚开始学习的时候你可以只看视频或者听某个人讲课,但等你学完之后,你觉得你掌握了,这时候建议还是得去看一下书籍,看权威技术书籍也是每个程序员必经之路。

四、入门学习视频

我们在看视频学习的时候,不能光动眼动脑不动手,比较科学的学习方法是在理解之后运用它们,这时候练手项目就很适合了。

四、实战案例

光学理论是没用的,要学会跟着一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。

五、面试资料

我们学习Python必然是为了找到高薪的工作,下面这些面试题是来自阿里、腾讯、字节等一线互联网大厂最新的面试资料,并且有阿里大佬给出了权威的解答,刷完这一套面试资料相信大家都能找到满意的工作。

成为一个Python程序员专家或许需要花费数年时间,但是打下坚实的基础只要几周就可以,如果你按照我提供的学习路线以及资料有意识地去实践,你就有很大可能成功!
最后祝你好运!!!

网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。

需要这份系统化学习资料的朋友,可以戳这里获取

一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!

  1. pickle 模块:pickle 是 Python 标准库中的模块,用于对象的序列化和反序列化。它可以将几乎所有的 Python 对象转换为字节流,并支持将字节流反序列化为原始对象。
  2. json 模块:json 是 Python 标准库中的模块,用于处理 JSON(JavaScript Object Notation)数据的编码和解码。它提供了将 Python 对象转换为 JSON 字符串以及将 JSON 字符串转换为 Python 对象的功能。
  3. yaml 模块:yaml 是一个用于处理 YAML(YAML Ain’t Markup Language)格式的模块。YAML 是一种人类可读的数据序列化格式,非常适合用于配置文件和数据交换。yaml 模块提供了将 Python 对象转换为 YAML 字符串以及将 YAML 字符串转换为 Python 对象的功能。
  4. 自定义序列化和反序列化:如果你需要自定义序列化和反序列化的行为,可以通过实现对象的 getstate() 和 setstate() 方法来自定义对象的序列化和反序列化过程。这样可以控制序列化和反序列化时保存和恢复对象的状态。
class Person:
    def __init__(self, name, age):
        self.name = name
        self.age = age

    def __getstate__(self):
        # 定义对象的序列化状态
        return {"name": self.name}

    def __setstate__(self, state):
        # 定义对象的反序列化过程
        self.name = state["name"]
        self.age = 0  # 恢复默认值

person = Person("John", 30)

# 序列化对象
pickle_data = pickle.dumps(person)

# 反序列化对象
unpickled_person = pickle.loads(pickle_data)

print(unpickled_person.name)  # Output: John
print(unpickled_person.age)   # Output: 0

下面我们详细说下json模块:
在 Python 中,json 模块用于处理 JSON(JavaScript Object Notation)数据的编码和解码操作。JSON 是一种常用的数据交换格式,它以简洁的文本形式表示结构化数据。json 模块提供了一些函数来处理 JSON 数据,包括编码(将 Python 对象转换为 JSON 字符串)和解码(将 JSON 字符串转换为 Python 对象)操作。

下面介绍 json 模块中的一些常用函数和用法:

  1. json.dumps(obj):将 Python 对象编码为 JSON 字符串。可以通过指定一些选项来控制编码过程,例如使用 indent 参数来指定缩进级别,使生成的 JSON 字符串具有更好的可读性。
import json

data = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

json_str = json.dumps(data, indent=4)
print(json_str)

  1. json.loads(json_str):将 JSON 字符串解码为 Python 对象。它会将 JSON 字符串解析成相应的 Python 字典、列表等数据结构。
import json

json_str = '{"name": "John", "age": 30, "city": "New York"}'

data = json.loads(json_str)
print(data)
print(data["name"])

3.json.dump(obj, file):将 Python 对象编码为 JSON 字符串,并将其写入文件对象中。可以用于将 JSON 数据保存到文件中。

import json

data = {
    "name": "John",
    "age": 30,
    "city": "New York"
}

with open("data.json", "w") as file:
    json.dump(data, file)

  1. json.load(file):从文件中读取 JSON 字符串,并将其解码为 Python 对象。
import json

with open("data.json", "r") as file:
    data = json.load(file)


**一、Python所有方向的学习路线**

Python所有方向的技术点做的整理,形成各个领域的知识点汇总,它的用处就在于,你可以按照下面的知识点去找对应的学习资源,保证自己学得较为全面。

![img](https://img-blog.csdnimg.cn/1d40facda2b84990b8e1743f5487d455.png)  
![img](https://img-blog.csdnimg.cn/0fc11d4a31bd431dbf124f67f1749046.png)

**二、Python必备开发工具**

工具都帮大家整理好了,安装就可直接上手!![img](https://img-blog.csdnimg.cn/ff266f529c6a46c4bc28e5f895dec647.gif#pic_center)

**三、最新Python学习笔记**

当我学到一定基础,有自己的理解能力的时候,会去阅读一些前辈整理的书籍或者手写的笔记资料,这些笔记详细记载了他们对一些技术点的理解,这些理解是比较独到,可以学到不一样的思路。

![img](https://img-blog.csdnimg.cn/6d414e9f494742db8bcc3fa312200539.png)

**四、Python视频合集**

观看全面零基础学习视频,看视频学习是最快捷也是最有效果的方式,跟着视频中老师的思路,从基础到深入,还是很容易入门的。

![img](https://img-blog.csdnimg.cn/a806d9b941c645858c61d161aec43789.png)

**五、实战案例**

纸上得来终觉浅,要学会跟着视频一起敲,要动手实操,才能将自己的所学运用到实际当中去,这时候可以搞点实战案例来学习。![img](https://img-blog.csdnimg.cn/a353983317b14d3c8856824a0d6186c1.png)

**六、面试宝典**

![在这里插入图片描述](https://img-blog.csdnimg.cn/97c454a3e5b4439b8600b50011cc8fe4.png)

![在这里插入图片描述](https://img-blog.csdnimg.cn/111f5462e7df433b981dc2430bb9ad39.png)

###### **简历模板**![在这里插入图片描述](https://img-blog.csdnimg.cn/646863996ac44da8af500c049bb72fbd.png#pic_center)




**网上学习资料一大堆,但如果学到的知识不成体系,遇到问题时只是浅尝辄止,不再深入研究,那么很难做到真正的技术提升。**

**[需要这份系统化学习资料的朋友,可以戳这里获取](https://bbs.csdn.net/topics/618317507)**

**一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人,都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!**

  • 22
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值