全国旗舰校区

不同学习城市 同样授课品质

北京

深圳

上海

广州

郑州

大连

武汉

成都

西安

杭州

青岛

重庆

长沙

哈尔滨

南京

太原

沈阳

合肥

贵阳

济南

下一个校区
就在你家门口
+
当前位置:首页  >  技术干货

如何将 JSON 解码成 python 对象?

发布时间:2023-11-07 11:02:45
发布人:xqq

JSON解码为python的对照表

要完成这个功能,也先要看下json解码为python对象的对照表

JSONPython

Objectdict

Arraylist

Stringstr

number(int)int

number(real)float

TrueTrue

FalseFalse

NullNone

编码对照表和解码对照表并不是一一对应的,因此如果一个python对象先编码成JSON,再转码回来后得到的对象可就不一定完全相等了。

json.loads()

这个方法的作用就是将参数s按照上面的对照表反序列化为一个python对象。参数s可以是str,byte或者byteArray格式,但必须要包含JSON文本才可以)。具体函数声明如下:

json.loads(s,*,encoding=None,cls=None,object_hook=None,parse_float=None,parse_int=None,parse_constant=None,object_pairs_hook=None,**kw)

下面就来一一了解下一些常用参数的意义

s就是要解码的python字符串

encoding指定编码格式

parse_float,默认情况下相当于float(num_str)。如果设置为其他值,将会把一个JSON字符串按照float解码调用,

parse_int,默认情况下相当于int(num_str),如果指定,将把每个JSON字符串按照int解码调用

来看下面的例子,其中最后一行就指定了parse_float。

>>>importjson

>>>json.loads('["foo",{"bar":["baz",null,1.0,2]}]')

['foo',{'bar':['baz',None,1.0,2]}]

>>>json.loads('"\\"foo\\bar"')

'"foo\x08ar'

>>>importdecimal

>>>json.loads('1.1',parse_float=decimal.Decimal)

Decimal('1.1')

json.load()

先来看函数声明

json.load(fp,*,cls=None,object_hook=None,parse_float=None,parse_int=None,parse_constant=None,object_pairs_hook=None,**kw)

作用是将fp文件流反序列化为python对象,其中的参数意义和loads方法相同。来看一个例子。

>>>importjson

>>>fromioimportStringIO

>>>io=StringIO('["streamingAPI"]')

>>>json.load(io)

['streamingAPI']

以上内容为大家介绍了如何将JSON解码成python对象?,希望对大家有所帮助,如果想要了解更多Python相关知识,请关注IT培训机构:千锋教育。

python培训

相关文章

Python的函数式编程与闭包

Python的函数式编程与闭包

2023-11-07
Python的内存管理机制

Python的内存管理机制

2023-11-07
怎么在Python装饰器中自定义功能呢?

怎么在Python装饰器中自定义功能呢?

2023-11-07
Python之详解__slots__

Python之详解__slots__

2023-11-07

最新文章

武汉新媒体行业公司排名

武汉新媒体行业公司排名

2023-11-01
武汉新媒体就业现状好吗

武汉新媒体就业现状好吗

2023-11-01
武汉全媒体行业发展现状及趋势

武汉全媒体行业发展现状及趋势

2023-10-31
武汉全媒体现状

武汉全媒体现状

2023-10-31
在线咨询 免费试学 教程领取