Common string operations
========================
Common string operations.
This module defines some constants useful for checking character
classes and some useful string functions. See the module `re' for
string functions based on regular expressions.
The constants defined in this module are:
`digits'
The string `'0123456789''.
`hexdigits'
The string `'0123456789abcdefABCDEF''.
`letters'
The concatenation of the strings `lowercase' and `uppercase'
described below.
`lowercase'
A string containing all the characters that are considered
lowercase letters. On most systems this is the string
`'abcdefghijklmnopqrstuvwxyz''. Do not change its definition --
the effect on the routines `upper()' and `swapcase()' is undefined.
`octdigits'
The string `'01234567''.
`punctuation'
String of ASCII characters which are considered punctuation
characters in the `C' locale.
`printable'
String of characters which are considered printable. This is a
combination of `digits', `letters', `punctuation', and
`whitespace'.
`uppercase'
A string containing all the characters that are considered
uppercase letters. On most systems this is the string
`'ABCDEFGHIJKLMNOPQRSTUVWXYZ''. Do not change its definition --
the effect on the routines `lower()' and `swapcase()' is undefined.
`whitespace'
A string containing all characters that are considered whitespace.
On most systems this includes the characters space, tab, linefeed,
return, formfeed, and vertical tab. Do not change its definition
-- the effect on the routines `strip()' and `split()' is undefined.
Many of the functions provided by this module are also defined as
methods of string and Unicode objects; see "String Methods" (section
Note:String Methods) for more information on those. The functions
defined in this module are:
`atof(s)'
_This is deprecated in Python 2.0. Use the `float()' built-in
function._ Convert a string to a floating point number. The
string must have the standard syntax for a floating point literal
in Python, optionally preceded by a sign (`+' or `-'). Note that
this behaves identical to the built-in function `float()' when
passed a string.
*Note:* When passing in a string, values for NaN and Infinity may
be returned, depending on the underlying C library. The specific
set of strings accepted which cause these values to be returned
depends entirely on the C library and is known to vary.
`atoi(s[, base])'
_This is deprecated in Python 2.0. Use the `int()' built-in
function._ Convert string S to an integer in the given BASE. The
string must consist of one or more digits, optionally preceded by a
sign (`+' or `-'). The BASE defaults to 10. If it is 0, a
default base is chosen depending on the leading characters of the
string (after stripping the sign): `0x' or `0X' means 16, `0'
means 8, anything else means 10. If BASE is 16, a leading `0x' or
`0X' is always accepted, though not required. This behaves
identically to the built-in function `int()' when passed a string.
(Also note: for a more flexible interpretation of numeric
literals, use the built-in function `eval()' .)
`atol(s[, base])'
_This is deprecated in Python 2.0. Use the `long()' built-in
function._ Convert string S to a long integer in the given BASE.
The string must consist of one or more digits, optionally preceded
by a sign (`+' or `-'). The BASE argument has the same meaning as
for `atoi()'. A trailing `l' or `L' is not allowed, except if the
base is 0. Note that when invoked without BASE or with BASE set
to 10, this behaves identical to the built-in function `long()'
when passed a string.
`capitalize(word)'
Capitalize the first character of the argument.
`capwords(s)'
Split the argument into words using `split()', capitalize each
word using `capitalize()', and join the capitalized words using
`join()'. Note that this replaces runs of whitespace characters
by a single space, and removes leading and trailing whitespace.
`expandtabs(s[, tabsize])'
Expand tabs in a string, i.e. replace them by one 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.
This doesn't understand other non-printing characters or escape
sequences. The tab size defaults to 8.
`find(s, sub[, start[,end]])'
Return the lowest index in S where the substring SUB is found such
that SUB is wholly contained in `S[START:END]'. Return `-1' on
failure. Defaults for START and END and interpretation of
negative values is the same as for slices.
`rfind(s, sub[, start[, end]])'
Like `find()' but find the highest index.
`index(s, sub[, start[, end]])'
Like `find()' but raise `ValueError' when the substring is not
found.
`rindex(s, sub[, start[, end]])'
Like `rfind()' but raise `ValueError' when the substring is not
found.
`count(s, sub[, start[, end]])'
Return the number of (non-overlapping) occurrences of substring
SUB in string `S[START:END]'. Defaults for START and END and
interpretation of negative values are the same as for slices.
`lower(s)'
Return a copy of S, but with upper case letters converted to lower
case.
`maketrans(from, to)'
Return a translation table suitable for passing to `translate()'
or `regex.compile()', that will map each character in FROM into
the character at the same position in TO; FROM and TO must have
the same length.
*Warning:* don't use strings derived from `lowercase' and
`uppercase' as arguments; in some locales, these don't have the
same length. For case conversions, always use `lower()' and
`upper()'.
`split(s[, sep[, maxsplit]])'
Return a list of the words of the string S. If the optional
second argument SEP is absent or `None', the words are separated
by arbitrary strings of whitespace characters (space, tab,
newline, return, formfeed). If the second argument SEP is present
and not `None', it specifies a string to be used as the word
separator. The returned list will then have one more item than
the number of non-overlapping occurrences of the separator in the
string. The optional third argument MAXSPLIT defaults to 0. If
it is nonzero, at most MAXSPLIT number of splits occur, and the
remainder of the string is returned as the final element of the
list (thus, the list will have at most `MAXSPLIT+1' elements).
`splitfields(s[, sep[, maxsplit]])'
This function behaves identically to `split()'. (In the past,
`split()' was only used with one argument, while `splitfields()'
was only used with two arguments.)
`join(words[, sep])'
Concatenate a list or tuple of words with intervening occurrences
of SEP. The default value for SEP is a single space character.
It is always true that `string.join(string.split(S, SEP), SEP)'
equals S.
`joinfields(words[, sep])'
This function behaves identical to `join()'. (In the past,
`join()' was only used with one argument, while `joinfields()' was
only used with two arguments.)
`lstrip(s)'
Return a copy of S but without leading whitespace characters.
`rstrip(s)'
Return a copy of S but without trailing whitespace characters.
`strip(s)'
Return a copy of S without leading or trailing whitespace.
`swapcase(s)'
Return a copy of S, but with lower case letters converted to upper
case and vice versa.
`translate(s, table[, deletechars])'
Delete all characters from S that are in DELETECHARS (if present),
and then translate the characters using TABLE, which must be a
256-character string giving the translation for each character
value, indexed by its ordinal.
`upper(s)'
Return a copy of S, but with lower case letters converted to upper
case.
`ljust(s, width)'
`rjust s, width'
`center s, width'
These functions respectively left-justify, right-justify and center
a string in a field of given width. They return a string that is
at least WIDTH characters wide, created by padding the string S
with spaces until the given width on the right, left or both
sides. The string is never truncated.
`zfill(s, width)'
Pad a numeric string on the left with zero digits until the given
width is reached. Strings starting with a sign are handled
correctly.
`replace(str, old, new[, maxsplit])'
Return a copy of string STR with all occurrences of substring OLD
replaced by NEW. If the optional argument MAXSPLIT is given, the
first MAXSPLIT occurrences are replaced.