#9087: update json docstrings -- unicode and long do not exist anymore.

This commit is contained in:
Georg Brandl 2010-08-02 20:16:18 +00:00
parent 8477f82c3e
commit c8284cfc57
4 changed files with 24 additions and 26 deletions

View File

@ -125,14 +125,12 @@ def dump(obj, fp, skipkeys=False, ensure_ascii=True, check_circular=True,
``.write()``-supporting file-like object). ``.write()``-supporting file-like object).
If ``skipkeys`` is true then ``dict`` keys that are not basic types If ``skipkeys`` is true then ``dict`` keys that are not basic types
(``str``, ``unicode``, ``int``, ``float``, ``bool``, ``None``) will be (``str``, ``int``, ``float``, ``bool``, ``None``) will be skipped
skipped instead of raising a ``TypeError``. instead of raising a ``TypeError``.
If ``ensure_ascii`` is false, then the some chunks written to ``fp`` If ``ensure_ascii`` is false, then the strings written to ``fp`` can
may be ``unicode`` instances, subject to normal Python ``str`` to contain non-ASCII characters if they appear in strings contained in
``unicode`` coercion rules. Unless ``fp.write()`` explicitly ``obj``. Otherwise, all such characters are escaped in JSON strings.
understands ``unicode`` (as in ``codecs.getwriter()``) this is likely
to cause an error.
If ``check_circular`` is false, then the circular reference check If ``check_circular`` is false, then the circular reference check
for container types will be skipped and a circular reference will for container types will be skipped and a circular reference will
@ -185,12 +183,12 @@ def dumps(obj, skipkeys=False, ensure_ascii=True, check_circular=True,
"""Serialize ``obj`` to a JSON formatted ``str``. """Serialize ``obj`` to a JSON formatted ``str``.
If ``skipkeys`` is false then ``dict`` keys that are not basic types If ``skipkeys`` is false then ``dict`` keys that are not basic types
(``str``, ``unicode``, ``int``, ``float``, ``bool``, ``None``) will be (``str``, ``int``, ``float``, ``bool``, ``None``) will be skipped
skipped instead of raising a ``TypeError``. instead of raising a ``TypeError``.
If ``ensure_ascii`` is false, then the return value will be a If ``ensure_ascii`` is false, then the return value can contain non-ASCII
``unicode`` instance subject to normal Python ``str`` to ``unicode`` characters if they appear in strings contained in ``obj``. Otherwise, all
coercion rules instead of being escaped to an ASCII ``str``. such characters are escaped in JSON strings.
If ``check_circular`` is false, then the circular reference check If ``check_circular`` is false, then the circular reference check
for container types will be skipped and a circular reference will for container types will be skipped and a circular reference will

View File

@ -263,9 +263,9 @@ class JSONDecoder(object):
+---------------+-------------------+ +---------------+-------------------+
| array | list | | array | list |
+---------------+-------------------+ +---------------+-------------------+
| string | unicode | | string | str |
+---------------+-------------------+ +---------------+-------------------+
| number (int) | int, long | | number (int) | int |
+---------------+-------------------+ +---------------+-------------------+
| number (real) | float | | number (real) | float |
+---------------+-------------------+ +---------------+-------------------+
@ -318,8 +318,8 @@ class JSONDecoder(object):
def decode(self, s, _w=WHITESPACE.match): def decode(self, s, _w=WHITESPACE.match):
"""Return the Python representation of ``s`` (a ``str`` or ``unicode`` """Return the Python representation of ``s`` (a ``str`` instance
instance containing a JSON document) containing a JSON document).
""" """
obj, end = self.raw_decode(s, idx=_w(s, 0).end()) obj, end = self.raw_decode(s, idx=_w(s, 0).end())
@ -329,8 +329,8 @@ class JSONDecoder(object):
return obj return obj
def raw_decode(self, s, idx=0): def raw_decode(self, s, idx=0):
"""Decode a JSON document from ``s`` (a ``str`` or ``unicode`` """Decode a JSON document from ``s`` (a ``str`` beginning with
beginning with a JSON document) and return a 2-tuple of the Python a JSON document) and return a 2-tuple of the Python
representation and the index in ``s`` where the document ended. representation and the index in ``s`` where the document ended.
This can be used to decode a JSON document from a string that may This can be used to decode a JSON document from a string that may

View File

@ -77,9 +77,9 @@ class JSONEncoder(object):
+-------------------+---------------+ +-------------------+---------------+
| list, tuple | array | | list, tuple | array |
+-------------------+---------------+ +-------------------+---------------+
| str, unicode | string | | str | string |
+-------------------+---------------+ +-------------------+---------------+
| int, long, float | number | | int, float | number |
+-------------------+---------------+ +-------------------+---------------+
| True | true | | True | true |
+-------------------+---------------+ +-------------------+---------------+
@ -102,12 +102,12 @@ class JSONEncoder(object):
"""Constructor for JSONEncoder, with sensible defaults. """Constructor for JSONEncoder, with sensible defaults.
If skipkeys is false, then it is a TypeError to attempt If skipkeys is false, then it is a TypeError to attempt
encoding of keys that are not str, int, long, float or None. If encoding of keys that are not str, int, float or None. If
skipkeys is True, such items are simply skipped. skipkeys is True, such items are simply skipped.
If ensure_ascii is true, the output is guaranteed to be str If ensure_ascii is true, the output is guaranteed to be str
objects with all incoming unicode characters escaped. If objects with all incoming non-ASCII characters escaped. If
ensure_ascii is false, the output will be unicode object. ensure_ascii is false, the output can contain non-ASCII characters.
If check_circular is true, then lists, dicts, and custom encoded If check_circular is true, then lists, dicts, and custom encoded
objects will be checked for circular references during encoding to objects will be checked for circular references during encoding to

View File

@ -484,7 +484,7 @@ bail:
} }
PyDoc_STRVAR(pydoc_scanstring, PyDoc_STRVAR(pydoc_scanstring,
"scanstring(basestring, end, strict=True) -> (bytes, end)\n" "scanstring(string, end, strict=True) -> (string, end)\n"
"\n" "\n"
"Scan the string s for a JSON string. End is the index of the\n" "Scan the string s for a JSON string. End is the index of the\n"
"character in s after the quote that started the JSON string.\n" "character in s after the quote that started the JSON string.\n"
@ -512,7 +512,7 @@ py_scanstring(PyObject* self UNUSED, PyObject *args)
} }
else { else {
PyErr_Format(PyExc_TypeError, PyErr_Format(PyExc_TypeError,
"first argument must be a string or bytes, not %.80s", "first argument must be a string, not %.80s",
Py_TYPE(pystr)->tp_name); Py_TYPE(pystr)->tp_name);
return NULL; return NULL;
} }
@ -520,7 +520,7 @@ py_scanstring(PyObject* self UNUSED, PyObject *args)
} }
PyDoc_STRVAR(pydoc_encode_basestring_ascii, PyDoc_STRVAR(pydoc_encode_basestring_ascii,
"encode_basestring_ascii(basestring) -> bytes\n" "encode_basestring_ascii(string) -> string\n"
"\n" "\n"
"Return an ASCII-only JSON representation of a Python string" "Return an ASCII-only JSON representation of a Python string"
); );