首页 > 编程语言 >python中数据类型与json的序列化和反序列

python中数据类型与json的序列化和反序列

时间:2023-01-04 10:58:47浏览次数:60  
标签:__ #- python 数据类型 JSON Python json 序列化

| JSON                | Python       |
| ------------------- | ------------ |
| object              | dict    (集合)     |
| array               | list       列表  |
| string              | str          |
| number (int / real) | int / float  |
| true / false        | True / False |
| null                | None         |
import json
#json模块主要有四个比较重要的函数,分别是:

#- `dump` - 将Python对象按照JSON格式序列化到文件中
#- `dumps` - 将Python对象处理成JSON格式的字符串
#- `load` - 将文件中的JSON数据反序列化成对象
#- `loads` - 将字符串的内容反序列化成Python对象
#这里出现了两个概念,一个叫序列化,一个叫反序列化。
#序列化(serialization)在计算机科学的数据处理中,是指将数据结构或对象状态转换为可以存储或传输的形式,这样在需要的时候能够恢复到原先的状态,而且通过序列化的数据重新获取字节时,可以利用这些字节来产生原始对象的副本(拷贝)。
#反序列化: 与这个过程相反的动作,即从一系列字节中提取数据结构的操作,就是反序列化(deserialization)”。
def main():
#字典 存入文件中 存在一个问题,如果文件命名为json.py那么就会报错。dump mydict = { 'name': '骆昊', 'age': 38, 'qq': 957658, 'friends': ['王大锤', '白元芳'], 'cars': [ {'brand': 'BYD', 'max_speed': 180}, {'brand': 'Audi', 'max_speed': 280}, {'brand': 'Benz', 'max_speed': 320} ] } try: with open('data.json', 'w', encoding='utf-8') as fs:
#直接把中文编译了 如果不想编译,可以添加参数 ensurea_ascii=False 存入文件就是中文了 json.dump(mydict, fs) except IOError as e: print(e) print('保存数据完成!') if __name__ == '__main__': main()

 

标签:__,#-,python,数据类型,JSON,Python,json,序列化
From: https://www.cnblogs.com/kevin-yang123/p/17024240.html

相关文章

  • scrapy shell && ipython
    scrapyshell:Scrapy终端,是一个交互终端,供您在未启动spider的情况下尝试及调试您的爬取代码。其本意是用来测试提取数据的代码,不过您可以将其作为正常的Python终端,在上面......
  • python3 The owner of this website (future.com) has banned your access based on y
     打开网站出现“Theownerofthiswebsite(future.com)hasbannedyouraccessbasedonyourbrowser'ssignature(784)“ 在翻译一下:本网站(future.com)的所有者已......
  • python读取二进制图片文件,并且复制
    defmain():try:#读取二进制文件实现复制图片文件的功能withopen('guido.jpg','rb')asfs1:data=fs1.read()print(typ......
  • javascript【基础】数据类型
    五种基本数据类型NumberStringBooleanUndefined一个没有设置值的变量Null表示一个空对象引用ES6(Symbol)//ES6一种复杂数据类型Object在Java......
  • 旧酒换新瓶,新版M1/M2芯片Macos(Ventura)安装古早版本Python2.7(Python2.x)
    向下兼容特性是软件开发系统的一个重要指标,它是指一个新的系统或者软件能够与旧的系统或软件兼容并正常运行。这意味着旧系统或软件可以在新系统或软件中使用,而不会出现问......
  • Python如何快速实现新闻采集
    作为一名资深技术员,我是经常使用爬虫工具来实现目标快速采集,下面就是我通过Python语言快速采集新闻的代码以及解释,希望能够给大家带来帮助。直接上代码:#!/usr/bin/envpy......
  • Python爬虫知识点之模块作用
    上一篇文中我们用到了Python的几个模块做了百度新闻的爬取,这些模块他们在爬虫中的作用如下:1、requests模块它用来做http网络请求,下载URL内容,相比Python自带的urllib.reque......
  • python读取文件,如果未找到,可以抛错处理
    defmain():f=open('致橡树.txt','r',encoding='utf-8')print(f.read())f.close()deftest():f=Nonetry:f=open("致橡树.svb",'r......
  • Python学习day01
    一、python介绍 ①发展史被解救的姜戈2.450万行Python2.6-October1,2008Python2.6.1-October1,2008Python2.6.6-October1,2008Python3.0-December3......
  • PostgreSQL citus python环境搭建
    PostgreSQLcituspython环境搭建 精选 原创Janeh10182022-01-0809:19:09博主文章分类:PostgreSQL©著作权文章标签sqlpostgresql数据库文章分类其它数据库阅读数27......