您的位置:首页 > 编程语言 > Python开发

python str对象函数大全

2012-07-10 20:33 246 查看
在python 中任何事物都是对象,就是万物皆对象,同时字符串也是一个对象,当你调用一些基本的操作方法时,会自动调用类定义的内建方法,在python中方法主要三种

1 一般的工友方法(默认)命名:和一般的函数命名规则相同

2私有方法命名:一般以__开始

3内建的方法,有时你也需要重写或重载 比如__init__构造方法

下面具体来看一下str的类方法

class str(basestring)

| str(object) ->string

|

| Return a nice stringrepresentation of the object.

| If the argument is a string,the return value is the same object.

|

| Method resolutionorder:

| str

| basestring

| object

|

| Methods defined here:

|

| __add__(...)

| x.__add__(y) <==> x+y

|

| __contains__(...)

| x.__contains__(y) <==> y in x

|

| __eq__(...)

| x.__eq__(y) <==> x==y

|

| __format__(...)

| S.__format__(format_spec)
-> unicode

|

| __ge__(...)

| x.__ge__(y) <==>x>=y

|

| __getattribute__(...)

| x.__getattribute__('name')
<==>x.name

|

| __getitem__(...)

| x.__getitem__(y) <==> x[y]

|

| __getnewargs__(...)

|

| __getslice__(...)

| x.__getslice__(i,
j) <==>x[i:j]

|

| Use of negative indices is not supported.

|

| __gt__(...)

| x.__gt__(y) <==>x>y

|

| __hash__(...)

| x.__hash__()
<==> hash(x)

|

| __le__(...)

| x.__le__(y) <==>x<=y

|

| __len__(...)

| x.__len__()
<==> len(x)

|

| __lt__(...)

| x.__lt__(y) <==>x<y

|

| __mod__(...)

| x.__mod__(y) <==> x%y

|

| __mul__(...)

| x.__mul__(n) <==> x*n

|

| __ne__(...)

| x.__ne__(y) <==> x!=y

|

| __repr__(...)

| x.__repr__()
<==> repr(x)

|

| __rmod__(...)

| x.__rmod__(y) <==> y%x

|

| __rmul__(...)

| x.__rmul__(n) <==> n*x

|

| __sizeof__(...)

| S.__sizeof__()
-> size of S in memory, inbytes

|

| __str__(...)

| x.__str__() <==> str(x)

|

| capitalize(...)

| S.capitalize() -> string

|

| Return a copy of the string S with only its first character

| capitalized.

|

| center(...)

| S.center(width[, fillchar]) -> string

|

| Return S centered in a string of length width. Padding is

| done using the specified fill character (default is a space)

|

| count(...)

| S.count(sub[, start[, end]]) -> int

|

| Return the number of non-overlapping occurrences of substring subin

| string S[start:end]. Optional arguments start andend are interpreted

| as in slice notation.

|

| decode(...)

| S.decode([encoding[,errors]]) -> object

|

| Decodes S using the codec registered for encoding. encodingdefaults

| to the default encoding. errors may be given to set a differenterror

| handling scheme. Default is 'strict' meaning that encoding errorsraise

| a UnicodeDecodeError. Other possible values are 'ignore' and'replace'

| as well as any other name registered with codecs.register_errorthat is

| able to handle UnicodeDecodeErrors.

|

| encode(...)

| S.encode([encoding[,errors]]) -> object

|

| Encodes S using the codec registered for encoding. encodingdefaults

| to the default encoding. errors may be given to set a differenterror

| handling scheme. Default is 'strict' meaning that encoding errorsraise

| a UnicodeEncodeError. Other possible values are 'ignore', 'replace'and

| 'xmlcharrefreplace' as well as any other name registered with

| codecs.register_error that is able to handleUnicodeEncodeErrors.

|

| endswith(...)

| S.endswith(suffix[, start[, end]]) -> bool

|

| Return True if S ends with the specified suffix, Falseotherwise.

| With optional start, test S beginning at that position.

| With optional end, stop comparing S at that position.

| suffix can also be a tuple of strings to try.

|

| expandtabs(...)

| S.expandtabs([tabsize]) -> string

|

| Return a copy of S where all tab characters are expanded usingspaces.

| If tabsize is not given, a tab size of 8 characters isassumed.

|

| find(...)

| S.find(sub [,start [,end]]) -> int

|

| Return the lowest index in S 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.

|

| format(...)

| S.format(*args, **kwargs) -> unicode

|

| index(...)

| S.index(sub [,start [,end]]) -> int

|

| Like S.find() but raise ValueError when the substring is notfound.

|

| isalnum(...)

| S.isalnum() -> bool

|

| Return True if all characters in S are alphanumeric

| and there is at least one character in S, False otherwise.

|

| isalpha(...)

| S.isalpha() -> bool

|

| Return True if all characters in S are alphabetic

| and there is at least one character in S, False otherwise.

|

| isdigit(...)

| S.isdigit() -> bool

|

| Return True if all characters in S are digits

| and there is at least one character in S, False otherwise.

|

| islower(...)

| S.islower() -> bool

|

| Return True if all cased characters in S are lowercase and thereis

| at least one cased character in S, False otherwise.

|

| isspace(...)

| S.isspace() -> bool

|

| Return True if all characters in S are whitespace

| and there is at least one character in S, False otherwise.

|

| istitle(...)

| S.istitle() -> bool

|

| Return True if S is a titlecased string and there is at leastone

| character in S, i.e. uppercase characters may only followuncased

| characters and lowercase characters only cased ones. ReturnFalse

| otherwise.

|

| isupper(...)

| S.isupper() -> bool

|

| Return True if all cased characters in S are uppercase and thereis

| at least one cased character in S, False otherwise.

|

| join(...)

| S.join(sequence) -> string

|

| Return a string which is the concatenation of the strings inthe

| sequence. The separator between elements isS.

|

| ljust(...)

| S.ljust(width[, fillchar]) -> string

|

| Return S left-justified in a string of length width. Paddingis

| done using the specified fill character (default is a space).

|

| lower(...)

| S.lower() -> string

|

| Return a copy of the string S converted to lowercase.

|

| lstrip(...)

| S.lstrip([chars]) -> string or unicode

|

| Return a copy of the string S with leading whitespaceremoved.

| If chars is given and not None, remove characters in charsinstead.

| If chars is unicode, S will be converted to unicode beforestripping

|

| partition(...)

| S.partition(sep) -> (head, sep, tail)

|

| Search for the separator sep in S, and return the part beforeit,

| the separator itself, and the part after it. Ifthe separator is not

| found, return S and two empty strings.

|

| replace(...)

| S.replace (old, new[, count]) -> string

|

| Return a copy of string S with all occurrences of substring

| old replaced by new. If the optional argumentcount is

| given, only the first count occurrences are replaced.

|

| rfind(...)

| S.rfind(sub [,start [,end]]) -> int

|

| Return the highest index in S 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.

|

| rindex(...)

| S.rindex(sub [,start [,end]]) -> int

|

| Like S.rfind() but raise ValueError when the substring is notfound.

|

| rjust(...)

| S.rjust(width[, fillchar]) -> string

|

| Return S right-justified in a string of length width. Paddingis

| done using the specified fill character (default is a space)

|

| rpartition(...)

| S.rpartition(sep) -> (tail, sep, head)

|

| Search for the separator sep in S, starting at the end of S, andreturn

| the part before it, the separator itself, and the part afterit. If the

| separator is not found, return two empty strings and S.

|

| rsplit(...)

| S.rsplit([sep [,maxsplit]]) -> list of strings

|

| Return a list of the words in the string S, using sep as the

| delimiter string, starting at the end of the string andworking

| to the front. If maxsplit is given, at mostmaxsplit splits are

| done. If sep is not specified or is None, any whitespacestring

| is a separator.

|

| rstrip(...)

| S.rstrip([chars]) -> string or unicode

|

| Return a copy of the string S with trailing whitespaceremoved.

| If chars is given and not None, remove characters in charsinstead.

| If chars is unicode, S will be converted to unicode beforestripping

|

| split(...)

| S.split([sep [,maxsplit]]) -> list of strings

|

| Return a list of the words in the string S, using sep as the

| delimiter string. If maxsplit is given, at mostmaxsplit

| splits are done. If sep is not specified or is None, any

| whitespace string is a separator and empty strings areremoved

| from the result.

|

| splitlines(...)

| S.splitlines([keepends]) -> list of strings

|

| Return a list of the lines in S, breaking at line boundaries.

| Line breaks are not included in the resulting list unlesskeepends

| is given and true.

|

| startswith(...)

| S.startswith(prefix[, start[, end]]) -> bool

|

| Return True if S starts with the specified prefix, Falseotherwise.

| With optional start, test S beginning at that position.

| With optional end, stop comparing S at that position.

| prefix can also be a tuple of strings to try.

|

| strip(...)

| S.strip([chars]) -> string or unicode

|

| Return a copy of the string S with leading and trailing

| whitespace removed.

| If chars is given and not None, remove characters in charsinstead.

| If chars is unicode, S will be converted to unicode beforestripping

|

| swapcase(...)

| S.swapcase() -> string

|

| Return a copy of the string S with uppercase characters

| converted to lowercase and vice versa.

|

| title(...)

| S.title() -> string

|

| Return a titlecased version of S, i.e. words start withuppercase

| characters, all remaining cased characters have lowercase.

|

| translate(...)

| S.translate(table [,deletechars]) -> string

|

| Return a copy of the string S, 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.

|

| upper(...)

| S.upper() -> string

|

| Return a copy of the string S converted to uppercase.

|

| zfill(...)

| S.zfill(width) -> string

|

| Pad a numeric string S with zeros on the left, to fill afield

| of the specified width. The string S is nevertruncated.

下面对一些方法举例说明

str1='ubuntu linux'

str2="linux"

print (str1.index(str2))

print (str1.find('r'))

print (str1.find(str2))

7

-1

7

>>>

find 和index 都能找出一个字符串在另外一个钟出现的首位置,但是还是有不同之处,find如果查到了就返回出现的首位置,查不到就返回false

str1='ubuntu linux'

str2="linux"

print (str1.index(str2))

print str1[str1.find(str2):]#可以用这种方法分割字符串

输出

>>>

7

linux

startswith(..)

S.endswith(suffix[, start[, end]]) -> bool

endswith(...)

S.endswith(suffix[, start[, end]]) -> bool

正如其名,他们分别是判断一个字符串师傅是以什么开头或以什么结尾

lstrip() rstrip strip

分别是用来删除前导空白,后导空白,和前后空白的

str1=' ubuntu linux '

print (str1.lstrip())

print (str1.rstrip())

print (str1.strip())

>>>

ubuntu linux

ubuntu linux

ubuntu linux

>>>

split(...)

S.split([sep [,maxsplit]]) -> list of strings

分割字符串

str1=' ubuntu linux '

print (str1.split(' '))

输出

['', 'ubuntu', 'linux', '']

返回的是一个序列

join(...) 将多个字符换压缩为单个字符串

S.join(sequence) -> string

arg1=['1','2','3']

str1=""

print (str1.join(arg1))

>>>

123

>>>

注意:join链接的是一些字符串碎片,如果不是可能会报错,比如

arg1=[1,2,'3']

str1=""

print (str1.join(arg1))

报错

Traceback (most recent call last):

File "E:/python/5", line 3, in <module>

print (str1.join(arg1))

TypeError: sequence item 0: expected string, int found

这里并没有将整数隐式转换为字符串

join抛出的异常是自解的,已经说明了异常情况

可以这样解决

arg1=[1,2,3,4,5]

print (''.join(str(i) for i in arg1))

>>>

12345

>>>

for遍历出来就是字符串了
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: