#!/usr/bin/env python # -*- coding:utf-8 -*- # Author:woshinidaye #字符串的操作 name = 'woshinidaye' lala = 'my name is {name} and i am {age} old' print(name.capitalize()) #首字母大写 print(name.count('i')) #数量统计 print(name.center(50,'-')) #宽度、长度 50;不够用‘-’补充 print(name.endswith('s')) #判断是否以‘s’结尾 print(name.endswith('e')) print(name.expandtabs(tabsize=10)) #确定table的长度 print('======>',name.find('i')) #查找从哪个开头的索引 print(type(name.find('ni'))) #可以用于字符串切片 print(name[name.find('ni'):7]) #字符串的切片,和列表用法一致 print(lala.format(name='woshinidaye',age=18)) #格式化输出 print(lala.format_map({'name':'woshinidaye','age':18})) #这里是字典 print(name.index('i')) #感觉这个和find没啥区别 print(name.isalnum()) #判断是不是 阿拉伯 字符 print('4568n#'.isalnum()) #判断是不是 阿拉伯 字符 print('ase'.isalpha(),'aAA'.isalpha(),'12fgh'.isalpha()) #判断是不是纯英文字符 print('====>','123'.isnumeric(),'-123.1'.isnumeric()) #判断是不是整数 print('123'.isdecimal(),'123.123'.isdecimal()) print('====>','123'.isdigit(),'-123.1'.isdigit()) #判断是不是整数 print('四十四'.isdigit(),'四十四'.isnumeric()) #中文也能判断。。。艹了 print('12ad'.isidentifier(),'ad12'.isidentifier()) #判断是不是合法的变量名 print('sss'.islower(),'ssS'.islower()) #判断是不是小写 print('sss'.isspace(),'ss s'.isspace(),' '.isspace()) #判断是不是空格 print('parting'.center(100,'=')) print('woshinidaye'.istitle()) print('Woshinidaye'.istitle()) #首字母才返回真 print('ss'.isupper(),'SS'.isupper(),'sS'.isupper()) #判断是不是全大写 print(''.join(['1','2','3']),'+'.join(['1','2','3']),type(''.join(['1','2','3']))) print(lala.ljust(50,'=')) #字符串在左边,不够的,右边用=补充 print(lala.rjust(50,'=')) #字符串在右边,不够的,左边用=补充 print('asssdsad'.upper(),'AAAAA'.lower(),'saTGTG'.upper()) #全部改为大写或者小写 print('parting'.center(100,'=')) print('\n 123 '.lstrip(),'123 \n'.rstrip(),'\n13123\n'.strip()) #左边去回车,空格,右边去,两边去 #p = str.maketrans({'f':'99'}) #把对应的字符翻译成一个想要的结果,也就是替换,一个参数必须为字典 p = str.maketrans('fa','AA') #两个参数的话,就要求参数长度对应 #p = str.maketrans('f','b','1')#三个参数的话,就要把3个参数匹配的变为NONE print('sfas'.translate(p)) #{102: 49, 97: 51} print('aassddaa'.replace('aa','AA',1),'aassddaa'.replace('aa','AA',2),'aassddaa'.replace('a','AA',2)) #这个替换,是以old STR匹配一次计数 print('aaabbbcccdddeeefff'.rfind('f'),'aaabbbcccdddeeefff'.find('f')) #最高索引还是最低索引 print('1123 234 345 '.split('3'),'1123 234 345 '.split(),'1+2+3+4'.split('+')) #3为定界符 delimiter,没写就默认是空格 print('1111\n2222'.splitlines()) #以换行符区分 print('123qwe12314355'.startswith('123')) #以‘123’开始 print('1231313123qwq'.endswith('qwq')) #以‘qwq’结束 print('qweQWE'.swapcase()) #把大小写反过来 print('of s is a big'.title()) #首字母全部大写 print('123123'.zfill(50)) print('ending'.center(100,'='))