前言:
今天你们对“python string 转dict”大体比较重视,你们都需要剖析一些“python string 转dict”的相关资讯。那么小编也在网络上收集了一些关于“python string 转dict””的相关内容,希望小伙伴们能喜欢,朋友们快快来了解一下吧!大家有没有发现,python中的字典类型的数据结构,和我们目前比较流行的web端的json格式,非常类似,几乎有点分不清了。那么这2者的区别是什么呢?
首先,从概念上,我们要理解这2者是截然不同的。
python中的dict类型是一种数据结构,而json是一种数据格式。json是一种数据格式,就对格式有严格的要求,比如key,value必须用双引号作为边界符,不能用单引号。而python中的dict类型则可以用单引号,也可以用双引号作为边界符。
其次,json和dict的区别对比,可以从以下几点来看出:
json中的key只能是字符串,而dict则可以是任何可hash的对象;json中的key可以是有序,重复的,但dict中的key不可以重复;json中的任意key可以有默认值undefined,但dict中的key没有默认值;json中任何key的访问方式和dict的key的访问方式不同;
总而言之,json本质上还是字符串,只是用key,value这种键值对的方式来表示,而dict则是一种数据结构。
在python中,dict可以转换为json格式,而json格式的字符串,也可以转换为dict。下面我们就用几个程序来看看这2者之间是如何转换的,以及转换之后的区别在哪里?
我们从这2者的定义就可以看出区别,d是一个字典类型的变量数据,j是一个字符串,用单引号引起来的字符串,该字符串内是json格式。那么打印这2者的结果显示是:
打印的d是字典数据结构打印,默认是单引号来作为key的边界值,而j则是以json格式打印,必须是双引号作为key,value的边界符。
接下来,我们将二者进行转换:
再来看下这2者转换后的打印结果:
将dict转换为json格式,我们可以指定json格式的显示,比如缩进,分隔符;将json格式的变量转换为dict,默认就是单引号来作为key,value的边界符。
标签: #python string 转dict