json字符串和字典的区别

json字符串和字典的区别:
json:
(JavaScript Object Notation)的首字母缩写,字面的意思是(javascript对象表示法),这里说的json指的是类似于javascript对象的一种数据格式对象,目前这种数据格式比较流行,逐渐替换掉了传统的xml数据格式, 前端使用ajax的时候后台返回该前端的数据格式就是json格式的。

字典是一种数据结构,而json是一种数据格式,
格式就会有一些形式上的限制,比如json的格式要求必须且只能使用双引号作为key或者值的边界符号(值如果是数字可以不用加双引号),不能使用单引号,用单引号或者不用引号会导致读取数据错误,而且“key”必须使用边界符(双引号),但字典就无所谓了,可以使用单引号,也可以使用双引号。

总结:
json的特点
1. 字符串外边有单引号
2. json是类字典的形式,里面的键-值对规定必须使用双引号,值如果是数字可以不加双引号,
但是键必须是双引号引起来的字符串, json的值可以是普通变量,数组,json对象

缺点:
json只有null、布尔、数字、字符串、数组和对象这几种数据类型,JSON没有日期类型

####################################
users = {
"admin": {
'username': 'admin',
"password": 123,
"nickname": "老王"
}
}
import json
以下两个函数用于json数据类型的转换
json.dumps() 字典 -> json
json.loads() json -> 字典
以下两个函数用于json数据类型转换的同时操作文件
json.dump()
json.load()

# 1. 数据类型的转换
# 其他类型转换为json字符串
json_str = json.dumps(users)
print(json_str, type(json_str))

# 读取json字符串,还原为原来的数据类型
json_obj = json.loads(json_str)
print(json_obj, type(json_obj))
#
# # 2. 类型转换的同时操作文件
# json.dump(users, open("d2.txt", "w"))
#
# data = json.load(open("d2.txt"))
# print(data)

来源:https://cloud.tencent.com/developer/article/1395008

上一篇:json字符串和字典的区别补充


下一篇:iOS开发JSON字符串和字典互转