老男孩教育专注IT教育10余年,只培养IT技术精英

全国免费咨询电话(渠道合作):400-609-2893

Python基础入门教程之序列化模块!

老男孩IT教育

行业新闻

2021年9月23日 16:42

JSON(JavaScript Object Notation, JS 对象标记)是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

  序列化:通过某种方式把数据结构或对象写入到磁盘文件中或通过网络传到其他节点的过程。

  反序列化:把磁盘中对象或者把网络节点中传输的数据恢复为python的数据对象的过程。

  序列化最重要的就是json序列化。

  JSON(JavaScript Object Notation, JS 对象标记)是一种轻量级的数据交换格式。它基于 ECMAScript (w3c制定的js规范)的一个子集,采用完全独立于编程语言的文本格式来存储和表示数据。简洁和清晰的层次结构使得 JSON 成为理想的数据交换语言。易于人阅读和编写,同时也易于机器解析和生成,并有效地提升网络传输效率。

Python培训班

import json
i=10
s='hello'
t=(1,4,6)
l=[3,5,7]
d={'name':"yuan"}

json_str1=json.dumps(i)
json_str2=json.dumps(s)
json_str3=json.dumps(t)
json_str4=json.dumps(l)
json_str5=json.dumps(d)

print(repr(json_str1))
print(repr(json_str2))
print(repr(json_str3))
print(repr(json_str4))
print(repr(json_str5))

  应用之磁盘读写

import json

dic={'name':'yuan','age':23,'is_married':0}
data=json.dumps(dic)  # 序列化,将python的字典转换为json格式的字符串
print("type",type(data)) # <class 'str'>
with open('json.txt','w') as f:
    f.write(data)  # 等价于json.dump(dic,f)


with open('json.txt') as f:
    data =  f.read()
    dic = json.loads(data) # 反序列化成为python的字典,等价于data=json.load(f)
    print(type(dic))

# 思考: json.loads('{"name": "yuan", "age": 23, "is_married": 0}') 可以吗?

  应用之网络传输

    <script>
        // 序列化
        data = {user:"yuan",pwd:123}
        console.log(JSON.stringify(data)) // '{"user":"yuan","pwd":123}'

        // 反序列化
        res_json = '{"name": "yuan", "age": 23, "is_married": 0}'
        let res = JSON.parse(res_json)
        console.log(res)
    </script>
import json

# 反序列化
data = '{"user":"yuan","pwd":123}'
data_dict = json.loads(data)
print(type(data_dict))

# 序列化
res = {'name':'yuan','age':23,'is_married':0}
res_json = json.dumps(res)  # 序列化,将python的字典转换为json格式的字符串

print(repr(res_json)) # '{"name": "yuan", "age": 23, "is_married": 0}'

  如果你对Python感兴趣,想要学习Python,就来老男孩教育吧!老男孩教育Python培训采用线上、线下相结合的方式,科学的教学方法,无论学员选择哪一种授课方式,均能学到真知识!

  推荐阅读:

  Python自动化运维常用库!Python学习教程

  Python中生成器是怎样的?Python培训

  Python的四大用途你一定要知道!Python入门

本文经授权发布,不代表老男孩教育立场。如若转载请联系原作者。