作业里面并没有调用过read方法,为什么会返回字符串呢
read并不是在初始化对象的时候就调用吧,为什么会返回字符串
read并不是在初始化对象的时候就调用吧,为什么会返回字符串
2018-08-06
回答一下你的问题。用vsc或者pycharm软件打开load函数定义信息,
"""Deserialize ``fp`` (a ``.read()``-supporting file-like object containing
a JSON document) to a Python object. """这一段属于描述,大概意思是通过解析fp类型内容,也就是类似于文件的对象的时候,会先执行read函数,也就是说load函数执行的时候,会率先执行read函数,而对象本身虽然不是文件类型,但是他和文件类型一样可以被loads,同样的被当成文件类型来使用,所以也能被load函数来执行。总之load函数执行的时候,会先执行read函数,所以read虽然不被调用,但是他会被先使用,最后附上read的定义
return loads(fp.read(),
cls=cls, object_hook=object_hook,
parse_float=parse_float, parse_int=parse_int,
parse_constant=parse_constant, object_pairs_hook=object_pairs_hook, **kw)
举报