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字符串的内置方法的主要内容,如果未能解决你的问题,请参考以下文章

内置数据结构(list)

python,如何在shell下查看一个模块都有哪些方法

python基础---整型字符串列表元组字典内置方法和文件操作介绍

python字符串的操作方法有哪些

Python 的字符串内置方法

python如何查看内置函数