首页 > 技术文章 > python基础——字符串

longwhite 2018-08-15 16:46 原文

我们都知道字符串和元组都是不可变类型,但字符串有着众多的方法,包括查、改、删、增。

1.count    计数功能

s = 'abdvgd245'
s.count('d')
>>>2
s.count('abd')
>>>1

2.index  查找元素,返回索引

s = 'anxg54ds'
s.index('anx')
>>>0
s.index('x')
>>>2

3. find   查找元素,返回索引,与index的区别是多了一个参数,即第二个参数是从此位置开始查找.

s = 'addgga154'
s.find('dd')
>>>1
s.find('g')
>>>3
s.find('a')
>>>0
s.find('a','1')
>>>5

4. isdigit  判断是否全部是数字组成的字符串

s = 'safa145'
s.isdigit()
>>>False

5. isalpha  判断是否全部是字母组成的字符串

s = 'daffsgv'
s.isalpha()
>>>True

6. endswith  判断是否以obj结尾

7. startswith 判断是否以obj开头

s = 'dfsjahjf'
s.endswith('f')
>>>True
s.startswith('d')
>>>True
s.startswith('f')
>>>False

8. islower  判断字符串内的字母是否都是小写字母组成

9. isupper  判断字符串内的字母是否都是大写字母组成

s = 'dfadsf4515'
s.islower()
>>>True
s.isupper()
>>>False
b = 'DSFS5451D'
b.islower()
>>>False
b.upper()
>>>True

10. isalnum  判断是否全部是字母和数字任意混合组成的字符串

11.isdecimal  判断是否全部是十进制数字组成的字符串

由于字符串是不可变类型,所以要想修改,只能用新的变量来承接它,不然它实质还是没变的.

1. upper  把所有小写字母改成大写

2. lower  把所有大写字母改成小写

s = 'dfAFD125'
s.upper()
>>>'DFAFD125'
s.lower()
>>>'dfafd125'

3. strip 把字符串两边空格都去掉,lstrip是去左边,rstrip是去右边.

s = '   dss dsv   '
s.strip()
>>>'dss dsv'
s.lstrip()
>>>'dss dsv   '
s.rstrip()
>>>'   dss dsv'

4. capitalize  把字符串第一个字符改为大写

5. title  把字符串内所有单词(以空格,逗号,数字等形式分隔开的字符)的首字母改成大写

s = 'df da4jf,dg'
s.capitalize()
>>>'Df da4jf,dg'
s.title()
>>>'Df Da4Jf,Dg'

6. split  默认是以空格进行切割,可传入一个参数,以此参数进行切割,返回一个列表.

s = 'dsfdgjdb'
s.split(d)
>>>['','sf','gi','b']

7.swapcase 翻转字符串的大小写

s = 'DDdvvdS'
s.swapcase()
>>>'ddDVVds'

8.center  把字符串居中,并以空格填充长度至指定参数的大小.

s = 'dsdf'
s.center(10)
>>>'   dsdf   '

1.replace  有三个参数,第一个是被替换的obj,第二个是替换成的obj,第三个是可选参数,是最大替换数目.如果想实现删除,只需将第二个参数写成''即可.

s ='sffsdfgd'
s.replace('f','')
>>>'ssdgd'
s.resplace('f','F',2)
>>>'sFFsdfgd'

  1. 利用+号进行拼接
  2. 格式化字符串 如:print ("%s%s"%str1%str2)
  3. 使用join  ' '.join([str1,str2,str3])
  4. 使用format   ‘{}{}{}'.format(str1,str2,str3)、 ‘{0}{2}{1}'.format(str1,str2,str3)指定了选择的参数位置  、‘{n0}{n1}{n2}'.format(n0=str1,n1=str2,n2=str3) 

字符串的转义

1.   \n  换行符

2.   \t  水平制表符,即空四个空格

3.   \b  退格

4.   \r  回车,当前位置移到本行开头并覆盖

5.   \\  代表反斜杠

6.   \'  代表一个单引号,同样"也可以这样

7.   \0  代表一个空字符

8.   \a  系统提示音

在python中如果想去掉字符串的转义,只需在字符串前加r  例如:r'fsaa\nad'

字符串的格式化

  1. %d  数字
  2. %f   浮点数
  3. %s  字符
  4. %c  ASCII码
  5. %o  八进制数
  6. %x  十六进制
  7. %e  科学计数法
  8. %r  数字和字符都可以 

补充:如'%a.bf'%23.12586,其中a的正负代表右对齐还是左对齐,a的大小表示保留的总个数,b代表保留多少位小数。

          如 '%as'%'sdfsh',其中a表示格式化长度。

         format了解:

        '{:.2f}'.format(12.333)         保留小数点后两位

       '{a:.2f}'.format(a=12.333)

       '{:.2%}'.format(0.333)         百分比格式

      '{:x}'.format(20)                转换成十六进制

      '{:o}'.format(20)                转换成八进制                                                

     ' {a:<10}’.format(a=12.3,b=13.44)       左对齐,长度为10

     ' {a:0<10}'.format(a=12.3,b=13.44)        数字补x (填充右边, 宽度为4)

    ' {a:0>10}’.format(a=12.3,b=13.44)      右对齐...

    ' {a:0^10}'.format(a=12.3,b=13.44)        两边对齐...

    '{{  hello {0}  }}'.format('python’)         转义{和}符号

   f = ' hello {0} '.format f('python’)         这里可以把format当作一个函数来看

 

          

 

推荐阅读