day4 字符串的使用方法
一、字符串切片
索引和切片 [起始位置:结束位置:步长]
s1 = 'python全栈8期' # 索引从0开始[索引(下标,index)] print(s1[0]) print(s1[3]) print(s1[5]) print(s1[-1]) # -1最后一个 # 切片 顾头不顾尾 print(s1[0:6]) print(s1[6:10]) print(s1[6:100]) # 索引超出部分不会报错 print(s1[6:]) # 不写默认到最后 # 取pto print(s1[0:5:2]) # 取ph全 print(s1[0:7:3]) # 倒取值加步长 # 取nhy print(s1[5:0:-2]) # 取htyp print(s1[3::-1]) print(s1) # 不变
二、字符串的使用
ret = 'alexS' # capitalize首字母大写,其它都变小写 print(ret.capitalize()) # upper全部大写,lower全部小写 print(ret.upper()) print(ret.lower()) # code = 'AasD' # your_code = input('请输入验证码,不区分大小写:') # if your_code.upper() == code.upper(): # print('输入正确') # else: # print('请重新输入') # swapcase大小写反转 print(ret.swapcase()) # title每个单词首字母大写,其它小写 ret1 = 'alex jin wu' print(ret1.title()) # center,指定长度居中,还可指定填充物 print(ret.center(20)) # 填充物默认为空 print(ret.center(20,'*')) # *******alexS******** # startswith以什么开头,endswith以什么结尾,返回布尔值 print(ret.startswith('a')) print(ret.startswith('ale')) print(ret.endswith('S')) print(ret.endswith('xS')) print(ret.startswith('le',1,3)) # 切片 # count计算出现次数 ret2 = 'alexS,aeeQ' print(ret2.count('a')) print(ret2.count('ale')) # 整体 print(ret2.count('W')) # 0 print(ret2.count('a',0,4)) # 前4个元素中有几个a # expandtabs默认将一个tab键变成8个空格,如果tab前面的字符长度不足8个,则补全8个,如果tab键前面的字符长度超过8个,则补全至16 a = 'qwa\t' print(a.expandtabs(),len(a.expandtabs())) # find通过元素找到索引,找不到返回-1,只会找到第一个的索引,后面的不管 print(ret.find('a')) print(ret.find('e',0,2)) # 找不到返回-1 # index,和find用法一样,找不到会报错 #print(ret.index('d')) # strip,去除字符串前后的空格、制表符、换行符,可指定去除的内容 ret3 = ' alex '.strip() print(ret3) ret3 = ' alex '.lstrip() # 去除左边的空格 print(ret3) ret3 = ' alex '.rstrip() # 去除右边的空格 print(ret3) ret3 = 'askkfa'.strip('a') print(ret3) ret3 = 'asakkfa'.strip('as') # strip会便利每一个字符去除,但是不能被打断 print(ret3) # split,以空格为分割条件,将字符串切分为列表,可指定分割条件,rsplit从右边往左分 ret4 = 'jinxin alex wusir' ret5 = ret4.split() print(ret5) ret4 = 'jinxin,alex,wusir' ret5 = ret4.split(',') print(ret5) ret4 = 'title tle tlie' ret5 = ret4.split('t',1) # 1表示分1次 print(ret5) # replace替换 ret6 = 'abcdaef' ret7 = ret6.replace('a','A',1) # 1表示替换1次,不写全部替换 print(ret7) # 格式化输出format # 第一种 ret8 = 'name:{},sex:{},身高:{}'.format('alex','male',178) print(ret8) # 第二种 ret8 = 'name:{0},sex:{1},身高:{2}'.format('alex','male',178) print(ret8) # 第三种:键值对 ret8 = 'name:{name},sex:{sex},身高:{high}'.format(name='alex',sex='male',high=178) print(ret8) # 判断字符串由什么组成 name = 'jinxin123' print(name.isalnum()) # 字符串由字母或数字组成 print(name.isalpha()) # 字符串只由字母组成 print(name.isdigit()) # 字符串只由数字组成