Python字符串的内置方法
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python字符串的内置方法相关的知识,希望对你有一定的参考价值。
如何查看字符串有哪些内置方法?
我们可以先创建一个类型为字符串的变量,然后查看该变量的类型。
然后用dir()方法查看字符串的内置方法有哪些。最后可以用help()查看各个内置方法的用法
>>> string=‘hello‘ >>> type(string) <type ‘str‘> >>> dir(str) [‘__add__‘, ‘__class__‘, ‘__contains__‘, ‘__delattr__‘, ‘__doc__‘, ‘__eq__‘, ‘__format__‘, ‘__ge__‘, ‘__getattribute__‘, ‘__getitem__‘, ‘__getnewargs__‘, ‘__getslice__‘, ‘__gt__‘, ‘__hash__‘, ‘__init__‘, ‘__le__‘, ‘__len__‘, ‘__lt__‘, ‘__mod__‘, ‘__mul__‘, ‘__ne__‘, ‘__new__‘, ‘__reduce__‘, ‘__reduce_ex__‘, ‘__repr__‘, ‘__rmod__‘, ‘__rmul__‘, ‘__setattr__‘, ‘__sizeof__‘, ‘__str__‘, ‘__subclasshook__‘, ‘_formatter_field_name_split‘, ‘_formatter_parser‘, ‘capitalize‘, ‘center‘, ‘count‘, ‘decode‘, ‘encode‘, ‘endswith‘, ‘expandtabs‘, ‘find‘, ‘format‘, ‘index‘, ‘isalnum‘, ‘isalpha‘, ‘isdigit‘, ‘islower‘, ‘isspace‘, ‘istitle‘, ‘isupper‘, ‘join‘, ‘ljust‘, ‘lower‘, ‘lstrip‘, ‘partition‘, ‘replace‘, ‘rfind‘, ‘rindex‘, ‘rjust‘, ‘rpartition‘, ‘rsplit‘, ‘rstrip‘, ‘split‘, ‘splitlines‘, ‘startswith‘, ‘strip‘, ‘swapcase‘, ‘title‘, ‘translate‘, ‘upper‘, ‘zfill‘]
以上就是字符串所有的内置方法。
常用的字符串方法:
capitalize(): 首字母大写
>>> string="asdf" >>> string.capitalize() ‘Asdf‘
center(长度,填充符号):
输出指定长度的字符串,并且将目标字符串居中,两边以指定的符号填充
string="asdf" >>> string.center(10,‘*‘) ‘***asdf***‘
count(‘字符串’,开始下标,结束下标) :
查看子序列的个数,或者说查看某个字符的个数
>>> name="asdfsdfsdfasdf" >>> name.count(‘s‘) 4 >>> name.count(‘s‘,0,9) 3
expandtabs(空格个数):
将tab转换成空格,可以指定转换成多格式空格,默认一个tab转换成8个空格
>>> name=‘ze\tng‘ >>> name.expandtabs() ‘ze ng‘ >>> name.expandtabs(1) ‘ze ng’
find() :
寻找第一个被匹配到的子序列的下标,如果没有找到,则返回-1
>>> string ‘asdf‘ >>> string.find(‘s‘) 1 >>> string.find(‘e‘) -1
format() :
字符串格式化
>>> string = "I am {0},age {1}" >>> string.format(‘zenge‘,28) ‘I am zenge,age 28‘ 还可以这样: >>> string = "I am {ss},age {dd}" >>> string.format(ss=‘zenge‘,dd=28) ‘I am zenge,age 28’ ##第二种方法相比较于第一种方法好处是,传值的时候不需要按照顺序传
列表传参
>>> list=[‘zeng‘,28] >>> name="I am {0},age {1}" >>> name.format(*list) ‘I am zeng,age 28’
字典传参
>>> dict={‘ss‘:‘zeng‘,‘dd‘:28} >>> name="I am {ss},age {dd}" >>> name.format(**dict) ‘I am zeng,age 28‘
index():
查找指定字符的下标,和find差不多,区别在于如果要查找的字符不存在,那么find返回-1,而index则会报错
>>> string = "asddfasd" >>> string.index(d) >>> string.index(‘d‘) 2
isalnum():
检查字符串是否为字母和数字,返回值为布尔型
>>> name="曾" >>> name.isalnum() False
islower():
检查字符串是否全都是小写,返回值为布尔型,对应的是isupper()
>>> name="asdfasA" >>> name.islower() False
isdigit():
检查字符串是否全部为数字
>>> num=‘12323‘ >>> num.isdigit() True >>> num=‘123234hehe‘ >>> num.isdigit() False
isspace():
检查字符串是否全部为空格
>>> name = ‘ ‘ >>> name.isspace() True >>> name = ‘ 1‘ >>> name.isspace() False
istitle() :
检查字符串是否为标题(标题的特点是首字母大写)
>>> name= "alex sb" >>> name.istitle() False
titie() :
将字符串转换成标题, 标题格式就是首字母大写
>>> name= "alex sb" >>> name.title() ‘Alex Sb’
join() :
将列表中的元素用符号连接起来组成字符串
>>> list=["zeng",‘28‘] >>> ‘_‘.join(list) ‘zeng_28‘
ljust(宽度,填充符号) :
内容左对齐 右对齐为rjust(),与center()对应
>>> name=“asdasd" >>> name.ljust(20,‘*‘) ‘asdasd**************‘
upper() :
字符串由小写变成大写, 与之相反的是lower() ,大写变成小写
>>> name ‘asdasd‘ >>> name.upper() ‘ASDASD‘
swapcase() :
大小写转换,大写的转换成小写,小写的转换成大写
>>> name="aaaBBB" >>> name.swapcase() ‘AAAbbb‘
partition() :
将字符串按照指定的字符或者符号分割成前中后三部分
>>> name="Hello world" >>> name.partition(‘ll‘) (‘He‘, ‘ll‘, ‘o world’)
replace(old,new):
替换 ,注意字符中所有满足条件的都会被替换
‘Hello world‘ >>> name.replace(‘ll‘,‘LL‘) ‘HeLLo world‘
split()
将字符串以某个字符分割,分割后的结果为列表
>>> name = "hello,zeng" >>> name.split(‘,‘) [‘hello‘, ‘zeng‘]
strip()
删除字符串中指定的字符,例如删除空格,rstrip()方法是删除字符串右边的指定字符,lstrip()方法是删除字符串左边的指定字符
>>> name = ‘ zeng ‘ >>> name.strip(‘‘) ‘ zeng ‘ >>> name.strip(‘ ‘) ‘zeng‘ >>> name.rstrip(‘ ‘) ‘ zeng‘ >>> name.lstrip(‘ ‘) ‘zeng ‘
使用help()方法查看字符串所有内置方法的详细信息和用法
| 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) -> string | | Return a formatted version of S as described by format_spec. | | __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, in bytes | | __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 sub in | string S[start:end]. Optional arguments start and end are interpreted | as in slice notation. | | decode(...) | S.decode([encoding[,errors]]) -> object | | Decodes S using the codec registered for encoding. encoding defaults | to the default encoding. errors may be given to set a different error | handling scheme. Default is ‘strict‘ meaning that encoding errors raise | a UnicodeDecodeError. Other possible values are ‘ignore‘ and ‘replace‘ | as well as any other name registered with codecs.register_error that is | able to handle UnicodeDecodeErrors. | | encode(...) | S.encode([encoding[,errors]]) -> object | | Encodes S using the codec registered for encoding. encoding defaults | to the default encoding. errors may be given to set a different error | handling scheme. Default is ‘strict‘ meaning that encoding errors raise | 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 handle UnicodeEncodeErrors. | | endswith(...) | S.endswith(suffix[, start[, end]]) -> bool | | Return True if S ends with the specified suffix, False otherwise. | 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 using spaces. | If tabsize is not given, a tab size of 8 characters is assumed. | | 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) -> string | | Return a formatted version of S, using substitutions from args and kwargs. | The substitutions are identified by braces (‘{‘ and ‘}‘). | | index(...) | S.index(sub [,start [,end]]) -> int | | Like S.find() but raise ValueError when the substring is not found. | | 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 there is | 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 least one | character in S, i.e. uppercase characters may only follow uncased | characters and lowercase characters only cased ones. Return False | otherwise. | | isupper(...) | S.isupper() -> bool | | Return True if all cased characters in S are uppercase and there is | at least one cased character in S, False otherwise. | | join(...) | S.join(iterable) -> string | | Return a string which is the concatenation of the strings in the | iterable. The separator between elements is S. | | ljust(...) | S.ljust(width[, fillchar]) -> string | | Return S left-justified in a string of length width. Padding is | 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 whitespace removed. | If chars is given and not None, remove characters in chars instead. | If chars is unicode, S will be converted to unicode before stripping | | partition(...) | S.partition(sep) -> (head, sep, tail) | | Search for the separator sep in S, and return the part before it, | the separator itself, and the part after it. If the 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 argument count 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 not found. | | rjust(...) | S.rjust(width[, fillchar]) -> string | | Return S right-justified in a string of length width. Padding is | done using the specified fill character (default is a space) | | rpartition(...) | S.rpartition(sep) -> (head, sep, tail) | | Search for the separator sep in S, starting at the end of S, and return | the part before it, the separator itself, and the part after it. 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 and working | to the front. If maxsplit is given, at most maxsplit splits are | done. If sep is not specified or is None, any whitespace string | is a separator. | | rstrip(...) | S.rstrip([chars]) -> string or unicode | | Return a copy of the string S with trailing whitespace removed. | If chars is given and not None, remove characters in chars instead. | If chars is unicode, S will be converted to unicode before stripping | | 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 most maxsplit | splits are done. If sep is not specified or is None, any | whitespace string is a separator and empty strings are removed | from the result. | | splitlines(...) | S.splitlines(keepends=False) -> list of strings | | Return a list of the lines in S, breaking at line boundaries. | Line breaks are not included in the resulting list unless keepends | is given and true. | | startswith(...) | S.startswith(prefix[, start[, end]]) -> bool | | Return True if S starts with the specified prefix, False otherwise. | 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 chars instead. | If chars is unicode, S will be converted to unicode before stripping | | 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 with uppercase | 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 or None. | If the table argument is None, no translation is applied and | the operation simply removes the characters in deletechars. | | 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 a field | of the specified width. The string S is never truncated. | | ---------------------------------------------------------------------- | Data and other attributes defined here: | | __new__ = <built-in method __new__ of type object> | T.__new__(S, ...) -> a new object with type S, a subtype of T
本文出自 “zengestudy” 博客,请务必保留此出处http://zengestudy.blog.51cto.com/1702365/1790771
以上是关于Python字符串的内置方法的主要内容,如果未能解决你的问题,请参考以下文章