在http://docs.python.org/library/json.html:
simplejson.load(fp[, encoding[, cls[, object_hook[, parse_float[, parse_int[, parse_constant[, object_pairs_hook[, use_decimal[, **kw]]]]]]]]])
将fp(一个.read() - 支持包含JSON文档的类文件对象)反序列化为Python对象。
我知道read()
和write()
做了什么。
但是在阅读了这个描述“read() - 支持类文件对象”之后,我发现我不知道什么对象类型支持read()
和write()
。
我在其他文档中找不到它。任何人都可以详细说明声明?
为什么我问这个问题是为了让“simplejson.load(urllib.open(...))”完成。 “urllib.open(...)”的返回值不是有效对象,因此我必须为simplejson定制它。但是,似乎该字符串不是read() - 支持。
类文件对象主要是StringIO
对象,连接套接字和实际文件对象。如果一切顺利,urllib.urlopen()
也会返回一个类似文件的objekt,支持必要的方法。
simplejson具有调用load和dumps,它们使用和生成字符串而不是像对象一样的文件。
对于类文件和字符串对象,此链接在StringIO和simplejson的上下文中有一个示例。
http://svn.red-bean.com/bob/simplejson/tags/simplejson-1.3/docs/index.html