[docs] [issue14042] json.dumps() documentation is slightly incorrect.

Terry J. Reedy report at bugs.python.org
Sat Feb 18 02:33:14 CET 2012


Terry J. Reedy <tjreedy at udel.edu> added the comment:

Entry for dump says
"If ensure_ascii is False (default: True), then some chunks written to fp may be unicode instances,"
Entry for dumps says
"If ensure_ascii is False, then the return value will be a unicode instance."
Entry for JSONEncoder says
"If ensure_ascii is True (the default), the output is guaranteed to be str objects with all incoming unicode characters escaped. If ensure_ascii is False, the output will be a unicode object."

I suspect the latter two meant to say something like
"If ensure_ascii is False and any chunk would be unicode, then the whole output is unicode."

And should 'all incoming unicode characters' either be or include 'all non-ascii chars (as in 3.x)?

---
In 3.x, ensure_ascii apparently has a different meaning.
"If ensure_ascii is True (the default), the output is guaranteed to have all incoming non-ASCII characters escaped. If ensure_ascii is False, these characters will be output as-is."

Unlike other params used in multiple json functions, ensure_ascii is only defined once, under json.JSONEncoder and not under dump and dumps. Should the JSONEncoder entry to copied to dump and dumps?

----------
assignee:  -> docs at python
components: +Documentation -Library (Lib)
nosy: +docs at python, ezio.melotti, rhettinger, terry.reedy
stage:  -> needs patch
versions: +Python 3.2, Python 3.3 -Python 2.6

_______________________________________
Python tracker <report at bugs.python.org>
<http://bugs.python.org/issue14042>
_______________________________________


More information about the docs mailing list