diff options
author | Georg Brandl <georg@python.org> | 2008-06-11 18:37:52 (GMT) |
---|---|---|
committer | Georg Brandl <georg@python.org> | 2008-06-11 18:37:52 (GMT) |
commit | 559e5d7f4d1155e95fb6f925c927a263f9196935 (patch) | |
tree | 4688423e81e9ffed7a5b2c87c50b55419e8e885a /Doc/library | |
parent | ea6d58d9d3033436b52e84960b9571525a4f5412 (diff) | |
download | cpython-559e5d7f4d1155e95fb6f925c927a263f9196935.zip cpython-559e5d7f4d1155e95fb6f925c927a263f9196935.tar.gz cpython-559e5d7f4d1155e95fb6f925c927a263f9196935.tar.bz2 |
#2630: Implement PEP 3138.
The repr() of a string now contains printable Unicode characters unescaped.
The new ascii() builtin can be used to get a repr() with only ASCII characters in it.
PEP and patch were written by Atsuo Ishimoto.
Diffstat (limited to 'Doc/library')
-rw-r--r-- | Doc/library/functions.rst | 8 | ||||
-rw-r--r-- | Doc/library/stdtypes.rst | 11 | ||||
-rw-r--r-- | Doc/library/string.rst | 5 |
3 files changed, 22 insertions, 2 deletions
diff --git a/Doc/library/functions.rst b/Doc/library/functions.rst index 875eea0..a420974 100644 --- a/Doc/library/functions.rst +++ b/Doc/library/functions.rst @@ -91,6 +91,14 @@ are always available. They are listed here in alphabetical order. return False +.. function:: ascii(object) + + As :func:`repr`, return a string containing a printable representation of an + object, but escape the non-ASCII characters in the string returned by + :func:`repr` using ``\x``, ``\u`` or ``\U`` escapes. This generates a string + similar to that returned by :func:`repr` in Python 2. + + .. function:: bin(x) Convert an integer number to a binary string. The result is a valid Python diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst index 27c3fb4..0dd520e 100644 --- a/Doc/library/stdtypes.rst +++ b/Doc/library/stdtypes.rst @@ -774,6 +774,17 @@ functions based on regular expressions. least one cased character, false otherwise. +.. method:: str.isprintable() + + Return true if all characters in the string are printable or the string is + empty, false otherwise. Nonprintable characters are those characters defined + in the Unicode character database as "Other" or "Separator", excepting the + ASCII space (0x20) which is considered printable. (Note that printable + characters in this context are those which should not be escaped when + :func:`repr` is invoked on a string. It has no bearing on the handling of + strings written to :data:`sys.stdout` or :data:`sys.stderr`.) + + .. method:: str.isspace() Return true if there are only whitespace characters in the string and there is diff --git a/Doc/library/string.rst b/Doc/library/string.rst index a5c3a81..668a530 100644 --- a/Doc/library/string.rst +++ b/Doc/library/string.rst @@ -229,8 +229,9 @@ as a string, overriding its own definition of formatting. By converting the value to a string before calling :meth:`__format__`, the normal formatting logic is bypassed. -Two conversion flags are currently supported: ``'!s'`` which calls :func:`str` -on the value, and ``'!r'`` which calls :func:`repr`. +Three conversion flags are currently supported: ``'!s'`` which calls :func:`str` +on the value, ``'!r'`` which calls :func:`repr` and ``'!a'`` which calls +:func:`ascii`. Some examples:: |