003_字符串str的操作

1,str-->bool(str转化成bool)
  s = ""--->False
  非空字符串转换成bool型,都是True
  s = "o"--->True
2,字符串索引
  s = 'ABCDEFG'
  字符串有两种索引方式
      A B C D E F
  正向索引 0 1 2 3 4 5
  反向索引 -6 -5 -4 -3 -2 -1

3,序列切片
  在python中序列的
  序列号可以从左至右数为0至7,从右至左数为-1至-8。
  序列的切片用 [start:end:step] 来取序列中的部分成员数据项。
  start 序号开始到 end 前一个结束,每间隔|step|-1个取一个成员step为负值是倒着取
>>>alst = [0,1,2,3,4,5,6,7]
>>>alst[:]
[0,1,2,3,4,5,6,7]
>>>alst[0:]
[0,1,2,3,4,5,6,7]
>>>alst[:-1]
[0,1,2,3,4,5,6]
>>>alst[2:5]
[2,3,4]
>>>alst[::-1]
[7,6,5,4,3,2,1,0]
>>>alst[5:0:-2]
[5,3,1]
4,大小写转化
s = "colour"
s1 = s.capitalize()     #首字母大写
print(s1)           # Colour
s2 = s.upper()      #全大写
s3 = s.lower()      #全小写
print(s2,s3)        # COLOUR colour

5,大小写翻转

s = "ColoUr"
s4 = s.swapcase()
print(s4)   #  cOLOuR

6,每个隔开的单词首字母大写

s = "alex*egon-wusir"
s5 = s.title()
print(s5)   #   Alex*Egon-Wusir

7,在规定的长度中,内容居中,两边默认空白填充,可更改填充的内容

s = 'colour'
s6 = s.center(20,'填')  #填充一个字符
print(s6)       #结果:填填填填填填填colour填填填填填填填

8,将字符串中的tab( )输出

s = 'co	lour'
s7 = s.expandtabs()     #将字符串中的	不作字符输出,而是作为tab键输出
print(s7)       #结果:co      lour

9,求字符串的长度

s = '字符串'
c = len(s)
print(c)

10,判断字符串以什么开始或结束的

#判断以什么开始
s = 'colour'
s8 = s.startswith('co')       #字符串是否以co开始的
s81 = s.startswith('lo',2,4)  #字符串在范围内是否以lo开始的
s82 = s.startswith('lou',2,4) #字符串在范围内是否以lou开始的
print(s8,s81,s82)   #结果:True True False

#判断以什么结束
s83 =s.endswith('ur')   #可设置范围,方式同上
print(s83)  #结果:True

11,find(self, sub, start=None, end=None)通过元素找索引,找不到返回-1

s = 'colour'
s9 = s.find('o') #返回找到的第一个索引,可以切片
print(s9)

12,index(self, sub, start=None, end=None)通过元素找索引,找不到报错

s = 'colour'
s10 = s.index('o')  #返回找到的第一个索引,可以切片
print(s10)

13,strip() #删除字符前后的指定字符,默认删除前后的空格

  rstrip() #删除右侧的

  lstrip() #删除左侧的

username = input('请输入:').strip()  #输入“    name     "
if username == 'name':
    print('正确')

14,数 字符串里有几个该元素 可设范围

  count(self, sub, start=None, end=None)

s = 'colour'
s11 = s.count('o')
print(s11)

15,split()以某字符分割字符串,并用列表保存

  • 默认以空格分割
  • 可设置最大分割次数
s = 'al;re;wr;zj'
s12 = s.split(';')
s13 = s.split(';',2)    #设置最大分割次数
print(s12)  #结果: ['al', 're', 'wr', 'zj']
print(s13)  #结果:['al', 're', 'wr;zj']

16,format()的三种玩法,格式化输出

s = '我叫{},今年{},爱好{},再说一下我叫{}'.format('name',20,'girl','name')
print(s)
s = '我叫{0},今年{1},爱好{2},再说一下我叫{0}'.format('name',20,'girl')
print(s)
name = input('请输入')
s = '我叫{name},今年{age},爱好{hobby},再说一下我叫{name}'.format(name=name,age=20,hobby='girl')
print(s)

17,replace()将字符串中的某些字符替换成新的字符

s = '但是看了就会反过来'
s13 = s.replace('看了','读取')  #两个参数必须有
print(s13)  #结果:但是读取就会反过来

#可以设置替换的最大出现次数
s = "aleX leNebe"
s14 = s.replace('e','p',2)
print(s14)  #结果:alpX lpNebe

18,is系列

name = 'colour123'
print(name.isalnum())   #字符串由字母或数字组成
print(name.isalpha())   #字符串只由字母组成
print(name.isdigit())   #字符串只由数字组成

  

原文地址:https://www.cnblogs.com/eternity-twinkle/p/10457348.html