common string oprations
import string
1. string constants(常量)
-
1) string. ascii_letters
-
The concatenation of the
ascii_lowercase and
ascii_uppercase constants described below. This value is not locale-dependent.
-
print string.ascii_letters
-
abcdefghijklmnopqrstuvwx yzABCDEFGHIJKLMNOPQRSTUV WXYZ
2) string. ascii_lowercase
The lowercase letters
'abcdefghijklmnopqrstuvwxyz'. This value is not locale-dependent and will not change.
-
3) string. ascii_uppercase
-
The uppercase letters
'ABCDEFGHIJKLMNOPQRSTUVWXYZ'. This value is not locale-dependent and will not change.
-
4) string.digits 十进制
-
The string '0123456789'.
5) string.hexdigits 十六进制
The string '0123456789abcdefABCDEF'.
6) string.letters
The concatenation of the strings lowercase and uppercase described below. The specific value is locale-dependent, and will be updated when locale.setlocale() is called.
-
print string.letters
-
abcdefghijklmnopqrstuvwx yzABCDEFGHIJKLMNOPQRSTUV WXYZ
7) string.lowercase
A string containing all the characters that are considered lowercase letters. On most systems this is the string 'abcdefghijklmnopqrstuvwx yz'. Do not change its definition — the effect on the routines upper() and swapcase() is undefined. The specific value is locale-dependent, and will be updated when locale.setlocale() is called.
8) string.octdigits 八进制
The string '01234567'.
9) string.punctuation 标点符号
String of ASCII characters which are considered punctuation characters in the C locale.
10) string.printable 所有可打印的字符集,包含数字,字母,标点空白符
String of characters which are considered printable. This is a combination of digits, letters, punctuation, and whitespace.
print string.printable
0123456789abcdefghijklmn opqrstuvwxyzABCDEFGHIJKL MNOPQRSTUVWXYZ!"#$%&'()*+,-./:;<=>?@[\]^_`{|}~
11) string.uppercase
A string containing all the characters that are considered uppercase letters. On most systems this is the string 'ABCDEFGHIJKLMNOPQRSTUVWX YZ'. Do not change its definition — the effect on the routines lower() and swapcase() is undefined. The specific value is locale-dependent, and will be updated when locale.setlocale() is called.
12) string.whitespace 所有的空白符包含
\t 制表符
\n 换行符 (linefeed)
\x0b
\x0C
\r 不要改变这个定义──因为所影响它的方法strip()和split()为被定义
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.
print string.whitespace
2. string Method(方法)
Below are listed the string methods which both 8-bit strings and Unicode objects support. Note that none of these methods take keyword arguments.
In addition, Python’s strings support the sequence type methods described in the Sequence Types — str, unicode, list, tuple, buffer, xrange section. To output formatted strings use template strings or the % operator described in the String Formatting Operations section. Also, see the re module for string functions based on regular expression_rs.
str.capitalize() 将字符串的第一个字母变成大写,其他字母变小写
Return a copy of the string with only its first character capitalized.
For 8-bit strings, this method is locale-dependent.
str.center(width[, fillchar])
Return centered in a string of length width. Padding is done using the specified fillchar (default is a space).
Changed in version 2.4: Support for the fillchar argument.
str.count(sub[, start[, end]]) 返回sub子串的数量
Return the number of non-overlapping occurrences of substring sub in the range [start, end]. Optional arguments start and end are interpreted as in slice notation.
str.decode([encoding[, errors]]) 解码
Decodes the string using the codec registered for encoding. encoding defaults to the default string encoding. errors may be given to set a different error handling scheme. The default is 'strict', meaning that encoding errors raise UnicodeError. Other possible values are 'ignore', 'replace' and any other name registered via codecs.register_error(), see section Codec Base Classes.
str.encode([encoding[, errors]]) 编码
Return an encoded version of the string. Default encoding is the current default string encoding. errors may be given to set a different error handling scheme. The default for errors is 'strict', meaning that encoding errors raise a UnicodeError. Other possible values are 'ignore', 'replace', 'xmlcharrefreplace', 'backslashreplace' and any other name registered via codecs.register_error(), see section Codec Base Classes. For a list of possible encodings, see section Standard Encodings.
str.endswith(suffix[, start[, end]]) 检查字符串是否suffix来结尾的,是返回true,否返回false.
Return True if the string ends with the specified suffix, otherwise return False. suffix can also be a tuple of suffixes to look for. With optional start, test beginning at that position. With optional end, stop comparing at that position.
str.expandtabs([tabsize])
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. 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.
str.find(sub[, start[, end]])在字符串中查找sub,找到后返回位置,没找到返回-1.
Return the lowest index in the string where substring sub is found, such that sub is contained in the range [start, end]. Optional arguments start and end are interpreted as in slice notation. Return -1 if sub is not found.
str.format(format_string, *args, **kwargs)
Perform a string formatting operation. The format_string argument can contain literal text or replacement fields delimited by braces {}. Each replacement field contains either the numeric index of a positional argument, or the name of a keyword argument. Returns a copy of format_string where each replacement field is replaced with the string value of the corresponding argument.
>>> "The sum of 1 + 2 is {0}".format(1+2)
'The sum of 1 + 2 is 3'
See Format String Syntax for a description of the various formatting options that can be specified in format strings.
This method of string formatting is the new standard in Python 3.0, and should be preferred to the % formatting described in String Formatting Operations in new code.
str.index(sub[, start[, end]])功能和find类似,只是当没有发现的时候返回报错
Like find(), but raise ValueError when the substring is not found.
str.isalnum()判断字符产是英文或数字组成的
Return true if all characters in the string are alphanumeric and there is at least one character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.isalpha()
Return true if all characters in the string are alphabetic and there is at least one character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.isdigit()
Return true if all characters in the string are digits and there is at least one character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.islower()
Return true if all cased characters in the string are lowercase and there is at least one cased character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.isspace()
Return true if there are only whitespace characters in the string and there is at least one character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.istitle()
Return true if the string is a titlecased string and there is at least one character, for example uppercase characters may only follow uncased characters and lowercase characters only cased ones. Return false otherwise.
For 8-bit strings, this method is locale-dependent.
str.isupper()
Return true if all cased characters in the string are uppercase and there is at least one cased character, false otherwise.
For 8-bit strings, this method is locale-dependent.
str.join(seq)
Return a string which is the concatenation of the strings in the sequence seq. The separator between elements is the string providing this method.
str.ljust(width[, fillchar])
Return the string left justified in a string of length width. Padding is done using the specified fillchar (default is a space). The original string is returned if width is less than len(s).
Changed in version 2.4: Support for the fillchar argument.
str.lower()
Return a copy of the string converted to lowercase. 将字符串转换成小写
For 8-bit strings, this method is locale-dependent.
str.lstrip([chars])
Return a copy of the string with leading characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. The chars argument is not a prefix; rather, all combinations of its values are stripped:
>>> ' spacious '.lstrip()
'spacious '
>>> 'www.example.com'.lstrip('cmowz.')
'example.com'
Changed in version 2.2.2: Support for the chars argument.
str.partition(sep)
Split the string at the first occurrence of sep, and return a 3-tuple containing the part before the separator, the separator itself, and the part after the separator. If the separator is not found, return a 3-tuple containing the string itself, followed by two empty strings.
New in version 2.5.
str.replace(old, new[, count])
Return a copy of the string with all occurrences of substring old replaced by new. If the optional argument count is given, only the first count occurrences are replaced.
str.rfind(sub[, start[, end]])
Return the highest index in the string where substring sub is found, such that sub is contained within s[start,end]. Optional arguments start and end are interpreted as in slice notation. Return -1 on failure.
str.rindex(sub[, start[, end]])
Like rfind() but raises ValueError when the substring sub is not found.
str.rjust(width[, fillchar])
Return the string right justified in a string of length width. Padding is done using the specified fillchar (default is a space). The original string is returned if width is less than len(s).
Changed in version 2.4: Support for the fillchar argument.
str.rpartition(sep)
Split the string at the last occurrence of sep, and return a 3-tuple containing the part before the separator, the separator itself, and the part after the separator. If the separator is not found, return a 3-tuple containing two empty strings, followed by the string itself.
New in version 2.5.
str.rsplit([sep[, maxsplit]])
Return a list of the words in the string, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done, the rightmost ones. If sep is not specified or None, any whitespace string is a separator. Except for splitting from the right, rsplit() behaves like split() which is described in detail below.
New in version 2.4.
str.rstrip([chars])
Return a copy of the string with trailing characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. The chars argument is not a suffix; rather, all combinations of its values are stripped:
>>> ' spacious '.rstrip()
' spacious'
>>> 'mississippi'.rstrip('ipz')
'mississ'
Changed in version 2.2.2: Support for the chars argument.
str.split([sep[, maxsplit]])
Return a list of the words in the string, using sep as the delimiter string. If maxsplit is given, at most maxsplit splits are done (thus, the list will have at most maxsplit+1 elements). If maxsplit is not specified, then there is no limit on the number of splits (all possible splits are made).
If sep is given, consecutive delimiters are not grouped together and are deemed to delimit empty strings (for example, '1,,2'.split(',') returns ['1', '', '2']). The sep argument may consist of multiple characters (for example, '1<>2<>3'.split('<>') returns ['1', '2', '3']). Splitting an empty string with a specified separator returns [''].
If sep is not specified or is None, a different splitting algorithm is applied: runs of consecutive whitespace are regarded as a single separator, and the result will contain no empty strings at the start or end if the string has leading or trailing whitespace. Consequently, splitting an empty string or a string consisting of just whitespace with a None separator returns [].
For example, ' 1 2 3 '.split() returns ['1', '2', '3'], and ' 1 2 3 '.split(None, 1) returns ['1', '2 3 '].
str.splitlines([keepends])
Return a list of the lines in the string, breaking at line boundaries. Line breaks are not included in the resulting list unless keepends is given and true.
str.startswith(prefix[, start[, end]])
Return True if string starts with the prefix, otherwise return False. prefix can also be a tuple of prefixes to look for. With optional start, test string beginning at that position. With optional end, stop comparing string at that position.
Changed in version 2.5: Accept tuples as prefix.
str.strip([chars])
Return a copy of the string with the leading and trailing characters removed. The chars argument is a string specifying the set of characters to be removed. If omitted or None, the chars argument defaults to removing whitespace. The chars argument is not a prefix or suffix; rather, all combinations of its values are stripped:
>>> ' spacious '.strip()
'spacious'
>>> 'www.example.com'.strip('cmowz.')
'example'
Changed in version 2.2.2: Support for the chars argument.
str.swapcase()
Return a copy of the string with uppercase characters converted to lowercase and vice versa.
For 8-bit strings, this method is locale-dependent.
str.title()
Return a titlecased version of the string: words start with uppercase characters, all remaining cased characters are lowercase.
For 8-bit strings, this method is locale-dependent.
str.translate(table[, deletechars])
Return a copy of the string where all characters occurring in the optional argument deletechars are removed, and the remaining characters have been mapped through the given translation table, which must be a string of length 256.
You can use the maketrans() helper function in the string module to create a translation table. For string objects, set the table argument to None for translations that only delete characters:
>>> 'read this short text'.translate(None, 'aeiou')
'rd ths shrt txt'
New in version 2.6: Support for a None table argument.
For Unicode objects, the translate() method does not accept the optional deletechars argument. Instead, it returns a copy of the s where all characters have been mapped through the given translation table which must be a mapping of Unicode ordinals to Unicode ordinals, Unicode strings or None. Unmapped characters are left untouched. Characters mapped to None are deleted. Note, a more flexible approach is to create a custom character mapping codec using the codecs module (see encodings.cp1251 for an example).
str.upper()
Return a copy of the string converted to uppercase.将字符串转换成大写
For 8-bit strings, this method is locale-dependent.
str.zfill(width)
Return the numeric string left filled with zeros in a string of length width. A sign prefix is handled correctly. The original string is returned if width is less than len(s).
New in version 2.2.2.
The following methods are present only on unicode objects:
unicode.isnumeric()
Return True if there are only numeric characters in S, False otherwise. Numeric characters include digit characters, and all characters that have the Unicode numeric value property, e.g. U+2155, VULGAR FRACTION ONE FIFTH.
unicode.isdecimal()
Return True if there are only decimal characters in S, False otherwise. Decimal characters include digit characters, and all characters that that can be used to form decimal-radix numbers, e.g. U+0660, ARABIC-INDIC DIGIT ZERO.
2. string formatting(格式)
2. string formatting(格式)
2. string formatting(格式)
6. string formatting(格式)
点击打开链接