summaryrefslogtreecommitdiffstats
path: root/Doc
diff options
context:
space:
mode:
authorNed Deily <nad@acm.org>2013-04-21 20:05:21 (GMT)
committerNed Deily <nad@acm.org>2013-04-21 20:05:21 (GMT)
commitbebe91a0ef65d80f4817a60d6a083d63bffe56b0 (patch)
treeefc27d92265085a9ccc407a0d9b180801ee02678 /Doc
parent4140fb52114541f52a047cb36205c79de0258ade (diff)
downloadcpython-bebe91a0ef65d80f4817a60d6a083d63bffe56b0.zip
cpython-bebe91a0ef65d80f4817a60d6a083d63bffe56b0.tar.gz
cpython-bebe91a0ef65d80f4817a60d6a083d63bffe56b0.tar.bz2
Issue #17670: Provide an example of expandtabs() usage.
Diffstat (limited to 'Doc')
-rw-r--r--Doc/library/stdtypes.rst22
1 files changed, 17 insertions, 5 deletions
diff --git a/Doc/library/stdtypes.rst b/Doc/library/stdtypes.rst
index 6ab7c37..03ab5db 100644
--- a/Doc/library/stdtypes.rst
+++ b/Doc/library/stdtypes.rst
@@ -1526,11 +1526,23 @@ expression support in the :mod:`re` module).
.. method:: str.expandtabs([tabsize])
- Return a copy of the string where all tab characters are replaced by zero or
- more spaces, depending on the current column and the given tab size. The
- column number is reset to zero after each newline occurring in the string.
- If *tabsize* is not given, a tab size of ``8`` characters is assumed. This
- doesn't understand other non-printing characters or escape sequences.
+ Return a copy of the string where all tab characters are replaced by one or
+ more spaces, depending on the current column and the given tab size. Tab
+ positions occur every *tabsize* characters (default is 8, giving tab
+ positions at columns 0, 8, 16 and so on). To expand the string, the current
+ column is set to zero and the string is examined character by character. If
+ the character is a tab (``\t``), one or more space characters are inserted
+ in the result until the current column is equal to the next tab position.
+ (The tab character itself is not copied.) If the character is a newline
+ (``\n``) or return (``\r``), it is copied and the current column is reset to
+ zero. Any other character is copied unchanged and the current column is
+ incremented by one regardless of how the character is represented when
+ printed.
+
+ >>> '01\t012\t0123\t01234'.expandtabs()
+ '01 012 0123 01234'
+ >>> '01\t012\t0123\t01234'.expandtabs(4)
+ '01 012 0123 01234'
.. method:: str.find(sub[, start[, end]])