14_Python字符串操作方法总结

字符串方法总结

  1 #s = '**i love you\n\t' 测试s.strip()使用的字符串
  2 s = 'i love you'
  3 #1.首字符大写,其余字符小写
  4 print(s.capitalize())  #I love you
  5 
  6 #2.每个单词首字母大写,使用空格或者特殊字符隔开的,算一个单词,首字符大写
  7 print(s.title()) #I Love You
  8 
  9 #3.大小写反转
 10 print(s.swapcase()) #I LOVE YOU
 11 
 12 #4.全大写
 13 print(s.upper()) #I LOVE YOU
 14 #5.全小写
 15 print(s.lower()) #i love you
 16 
 17 #6.判断是否以xx开头 ,可以设置开始位置和结束范围
 18 print(s.startswith('i'))  #True
 19 #判断第三位是否以l开头
 20 print(s.startswith('l',3)) #False  s[3] = o
 21 #判断第7位之前,是否由y开头的字符
 22 print(s.startswith('y',7)) #True  s[7] = y
 23 
 24 #7.判断是否以xx结尾 ,可以设置开始位置,结束位置 。不包括结束位置
 25 print(s.endswith('u'))  #True
 26 print(s.endswith('e',0,7))  #False s[7]  i love y
 27 print(s.endswith('y',0,8))  #True endswith 顾首不顾尾
 28 print(s.endswith('o',2))  #False
 29 
 30 #8.find  查找某个元素,返回索引,开始位置和结束位置(不包括结束位置)。没找到返回-1
 31 print(s.find('o')) #3
 32 print(s.find('v',0,4)) #顾头不顾尾,s[4] = 'v'  -1
 33 print(s.find(' ',0,3))#开始位置不能省略
 34 print(s.find('s')) #-1
 35 
 36 #9.index查找,和find一样,找不到报错
 37 print(s.index('o')) #3
 38 print(s.index(' ',1,2))#1
 39 print(s.index('u',0,7))  #ValueError: substring not found
 40 
 41 #10.默认去除字符串两边的空格,\t \n ;也可以设定去重自定义字符(\t\n不去除)
 42 print(s)#**i love you\t\n
 43 print(s.strip()) #i love you#默认去除\t\n
 44 print(s.strip('*'))#去除了*,但是\t\n没去除
 45 print(s.strip('*\t\n'))  #i love you
 46 
 47 #11.center 字符串居中,两边默认空格填充,两个参数  宽度,填充字符
 48 print(s.center(16))  #   i love you
 49 print(s.center(16,'*'))#***i love you***
 50 
 51 #12.分割字符串,以x字符切割,结果不包含x字符,默认以空格。可以指定切割次数,默认
 52 #并且使用split() 可以将字符串转化成列表
 53 print(s.split()) #默认以空格  ['i', 'love', 'you']
 54 print(s.split('o')) #['i l', 've y', 'u']
 55 print(s.split('o',1)) #['i l', 've you']
 56 
 57 #13.count() 统计某个元素在字符串中出现的次数.可以设置查找范围
 58 print(s.count('o')) #2
 59 print(s.count('o',0,8)) #1  不顾尾
 60 
 61 #14.字符串的替换,并且可以设置替换次数。默认是全替换
 62 print(s.replace('o','s'))  #i lsve ysu
 63 print(s.replace('o','s',1)) #i lsve you
 64 print(s.replace('s','l')) #如果old不存在,不替换,返回字符串本身
 65 
 66 #15.判断字符串是否全由数字组成
 67 print(s.isdigit())  #False
 68 
 69 #16.判断字符串是否全由字母组成
 70 print(s.isalpha()) #False  因为包含空格
 71 
 72 #17.判断字符串是否由字母和数字组成
 73 print(s.isalnum()) #Falses
 74 
 75 #18. 增加tab
 76 print(s.expandtabs(16))# 遇到空格添加16个,有空格,就减去空格数。i love you
 77 
 78 #19.返回字符串的长度
 79 print(len(s)) #10
 80 
 81 #20.join  去掉第一个之前,最后一个之后,其他字符前后都有*链接
 82 #join()另一个功能是 把一个列表转换成字符串
 83 s = '*'.join(s)
 84 print(s)
 85 l1 = ['1','2','3','4','5','6','7','8'] #必须全由字符组的列表。也就是说,列表的每个元组都是字符串类型
 86 s = ''.join(l1)
 87 print(s)
 88 
 89 #21.format三种用法
 90 #第一种是占位赋值,有序,不能重复使用
 91 s1 = '{}, {}, {}'.format(s[0:1],s[1:6],s[6:])
 92 print(s1) #i,  love,  you
 93 
 94 #第二种用法
 95 #会报索引错误,{}从0开始,数字不能乱填
 96 s1 = '{1},{2},{3},{1}{2}{3}'.format(s[0:1],s[1:6],s[6:])
 97 
 98 #可以重复使用,有序
 99 s1 = '{0},{1},{2},{0}{1}{2}'.format(s[0:1],s[1:6],s[6:])
100 print(s1)
101 
102 
103 #第三种用法 字典的形式 ,可以重复利用,可以无序
104 s1 = '{one},{two},{three},{three}{two}{one}'.format(one=' i',two=' love',three='you') #i, love,you,you love i
105 print(s1)

 

posted @ 2018-02-01 20:49  短毛兔  阅读(184)  评论(0编辑  收藏  举报