python——json、字典的区别及相互转换方法

这篇具有很好参考价值的文章主要介绍了python——json、字典的区别及相互转换方法。希望对大家有所帮助。如果存在错误或未考虑完全的地方,请大家不吝赐教,您也可以点击"举报违法"按钮提交疑问。

前言

json,是一种轻量级的数据交换格式,由JavaScript语言创建,广泛应用于网页数据交互,常见于爬虫和数据分析领域。
json格式简洁、结构清晰,存储格式为:键值对(key:value)
在python中,字典(dict)与json非常相似,都是键值对(key:value)形式。

一、 json与字典的区别

json与字典的区别,如下表:

json格式 dict(字典,python)
一种数据格式,纯字符串。可以被解析成python的字典(dict)形式或其他形式。 一种数据结构
key只能是字符串 key可以是python中任意不可变数据:字符串、数值、元组等
key可以是有序、重复的 key不能重复
字符串只能使用双引号 字符串可以用单引号、双引号、三引号
任意key存在默认值undefined 任意key没有默认值
json:true、false、null、string dict:Ture、False、None、str
json中文是unicode编码,如,“\u6211”

二、json与字典相互转换

首先,创建一个字典(a_dict),作为举例。

a_dict = {'a': 1, "b": 'qw', '''c''': ['q', 'w'], 'd': '您好'}
print(type(a_dict))
print(a_dict)

python json转字典,python,python,json,开发语言

(一)将字典转化为json格式数据

json.dumps():将python数据类型转换成json字符串,dict→json
语法:
json.dumps(obj,ensure_ascii=True,indent=None,encoding=“utf8”,sort_keys=False,separators=None…)

常用参数 释义
ensure_ascii 默认为True,中文编码为unicode;改成False,则可以输出中文汉字。
indent 默认为None,参数根据格式缩进显示,表示缩进几个空格,接收int类型数值。
sort_keys 默认为False,不按字典的key排序;改成True,按照字典的key排序
separators 指定分隔符,默认为None;包含dict每个元素间分隔符(逗号“,”),key与value之间的分隔符(冒号“:”),指定分隔符后,原来的分隔符则直接去掉
encoding 编码,默认utf-8

将字典a_dict,转换为json格式数据,代码如下:

# 将字典a_dict转换为json
import json
a_dict = {'a': 1, "b": 'qw', '''c''': ['q', 'w'], 'd': '您好'}
a_json = json.dumps(a_dict)
print(type(a_json))
print(a_json)

python json转字典,python,python,json,开发语言
注:字典a_dict,转换为json数据a_json后,有以下几点变化:
(1)数据类型由字典dict变成str
(2)a_dict中的单引号、三单引号全部统一为双引号
(3)中文“您好”转换为unicode编码“\u60a8\u597d”。
如果想要正常显示中文,可以加入参数:ensure_ascii=False,代码变为:

# 将字典a_dict转换为json
import json
a_dict = {'a': 1, "b": 'qw', '''c''': ['q', 'w'], 'd': '您好'}
a_json = json.dumps(a_dict, ensure_ascii=False)
print(type(a_json))
print(a_json)

python json转字典,python,python,json,开发语言
(4)如果数据很多,直接一排一排这样显示,很难看清结构。加入参数:indent=缩进空格数,可以美观清晰的输出,代码如:

import json

a_dict = {'a': 1, "b": 'qw', '''c''': ['q', 'w'], 'd': '您好'}
a_json = json.dumps(a_dict, ensure_ascii=False, indent=2)  # 缩进2个空格
print(type(a_json))
print(a_json)

python json转字典,python,python,json,开发语言

(二)将json格式数据转换为字典

json.loads():将json字符串解析成python数据类型,json→dict
将a_json转换为字典格式数据,如下:

b_dict = json.loads(a_json)
print(type(b_dict))
print(b_dict)

python json转字典,python,python,json,开发语言

以上就是python中,json与字典数据格式之间的区别,及相互转换方法,可供参考。

-end-文章来源地址https://www.toymoban.com/news/detail-715140.html

到了这里,关于python——json、字典的区别及相互转换方法的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!

本文来自互联网用户投稿,该文观点仅代表作者本人,不代表本站立场。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如若转载,请注明出处: 如若内容造成侵权/违法违规/事实不符,请点击违法举报进行投诉反馈,一经查实,立即删除!

领支付宝红包 赞助服务器费用

相关文章

  • Json对象和Json字符串之间相互转换

    作为前端开发,在和后端进行联调接口时,总会遇到要求传JSON字符串或是JSON对象,或者是返回值里是JSON字符串要在页面上展示JSON对象这种情况,都需要前端开发人员对Json对象和Json对象进行相互转换,得到想要的结果。 废话不多说,直接上干货: 1.首先定义一个Json对象:

    2024年02月11日
    浏览(57)
  • Mask图像与json文件相互转换

    做机器学习处理图像时,需要标注图像,其中一种标注是标出图像中的某些区域,生成Mask图像或记录下这些区域的轮廓点坐标。通常,标注直接生成其中一种文件,即只生成json文件或只生成Mask图像。故在此贴出Mask图像与json文件相互转换的Python代码。 mask_to_json json_to_mask 使

    2024年02月15日
    浏览(45)
  • Python中列表(list)与数组(array)的相互转换方法介绍

    在Python编程中,列表(list)和数组(array)是常见的数据结构,它们在存储和处理数据时具有不同的特点和用途。有时候我们需要在列表和数组之间进行相互转换。本文将介绍如何在Python中实现列表与数组之间的相互转换,并提供相应的源代码示例。 列表(list)转换为数组

    2024年02月05日
    浏览(44)
  • Java实体和JSON之间的相互转换

    代码如下: 初始化并输出一下: 注意,如果没有使用“@Data”注解,一定要加上get和set方法,不然转化之后的Json是空的! 主要是对SerializerFeature枚举类的使用,详细的可以看这个博客: https://blog.csdn.net/xiang__liu/article/details/81570923 或者看这里: https://www.javadoc.io/static/com.ali

    2024年02月12日
    浏览(48)
  • golang学习-golang结构体和Json相互转换

    1、结构体转为json对象     v, _ := json.Marshal(student)     jsonStr := string(v) // 结构体转为json对象 2、json字符串转为结构体     var s1 Student     err := json.Unmarshal([]byte(str), s1) //json 字符串转为结构体    3、结构体标签 表示的是转换为json对象时,ID字段变为id,Name字段变为name. type

    2024年01月23日
    浏览(54)
  • java对象与Json字符串的相互转换

    文章目录 1.Json对象转换为java 对象 2. Java对象转换JSON 1.Json对象转换为java 对象 导入jackson的相关jar包 创建Jackson核心对象 ObjectMapper 调用ObjectMapper的相关方法进行转换 2. Java对象转换JSON 常见的解析器:Jsonlib,Gson,fastjson,jackson 1.导入jackson的相关jar包 2.创建Jackson核心对象 Obj

    2024年02月09日
    浏览(58)
  • Java 解析多层嵌套json数据及json字符串与对象的相互转换

    本文主要介绍java解析多层嵌套json数据以及字符串与JSON对象之间的相互转换,包括:json字符串的取值,json对象与字符串的相互转换,字符串转化为java对象,字符串转化为javaList列表等。 提示:以下是本篇文章正文内容,下面案例可供参考 数据格式:JSON实际上就是键值对(

    2024年02月04日
    浏览(62)
  • JAVA对象、List、Map和JSON之间的相互转换

    参考文章: Java-json相关转换,JSONObject与实体类/map互转、List/List<map>和JSONArray互转、获取JSONObject中的key value、字符串String转换等 【JSON转换】String与JSONObject、JSONArray、JAVA对象和List 的相互转换

    2024年02月03日
    浏览(62)
  • Java中 List 和 JSON字符串之间的相互转换

    Java中 List 和 JSON字符串之间的相互转换 List 转 JSON 字符串 前端js将后端的json字符串转对象 JSON字符串转List

    2024年04月23日
    浏览(66)
  • 【Java alibaba&hutool】JSON、Map、实体对象间的相互转换

            首先要知道三者的互转关系,可以先将JSON理解成是String类型。这篇博文主要是记录阿里巴巴的JSONObject的两个方法。toJSONString()以及parseObject()方法。顺便巩固Map与实体对象的转换技巧。         综上:这里所学得知识使用fastjson是实现Map -- JSON - Bean。其余由糊涂

    2024年02月07日
    浏览(42)

觉得文章有用就打赏一下文章作者

支付宝扫一扫打赏

博客赞助

微信扫一扫打赏

请作者喝杯咖啡吧~博客赞助

支付宝扫一扫领取红包,优惠每天领

二维码1

领取红包

二维码2

领红包