diff options
author | Ned Deily <nad@acm.org> | 2013-04-21 20:05:21 (GMT) |
---|---|---|
committer | Ned Deily <nad@acm.org> | 2013-04-21 20:05:21 (GMT) |
commit | bebe91a0ef65d80f4817a60d6a083d63bffe56b0 (patch) | |
tree | efc27d92265085a9ccc407a0d9b180801ee02678 /Doc | |
parent | 4140fb52114541f52a047cb36205c79de0258ade (diff) | |
download | cpython-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.rst | 22 |
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]]) |