从零开始的Python学习Episode 6——字符串操作
字符串操作
一、输出重复字符串
print('smile'*6) #输出6个smile
二、通过引索输出部分字符串
print('smile'[1:]) print('smile'[1:3]) #输出 #mile #mi #ims
此处与之前的列表切片规则相同。
三、用in检查字符串内容
a = 'Tomorrow will be a better day. ' print('day' in a) print('zzz' in a) #输出 #True #False
若字符串中没有对应的字符串,返回False
若字符串中有对应的字符串,返回True
四、格式字符串
a = 'Tomorrow' b = 'The day after tomorrow' print('%s will be a better day. '% a) print('%s will be a better day. '% b) #输出 #Tomorrow will be a better day. #The day after tomorrow will be a better day.
通过这种方法可以更加灵活地使用字符串,方便修改句子内容而不改变固定部分。
五、字符串的拼接
a = 'aaa' b = 'bbb' c = 'ccc' d = ''.join([a,b,c]) print(d) d = '*'.join([a,b,c]) print(d) #输出 #aaabbbccc #aaa*bbb*ccc
六、一系列的内置方法
st = 'smile puppy' print(st.count('p')) #统计元素个数 print(st.capitalize()) #使首字母大写 输出Smile puppy print(st.center(21,'#')) #减去st的内容居中,然后两边以符号填充,数目为参数1减去st的内容长度 print(st.startswith('s')) #判断是否以某个内容开头,返回True或者False print(st.endswith('y')) #判断是否以某个内容结尾,返回True或者False print(st.expandtabs(tabsize=10))#修改\t代表的空格数量 print(st.find('e')) #查找第一个元素,返回其索引值 # st = 'smile puppy {name}' # print(st.format(name='puppy'))#格式化的另一种方式,但必须在定义字符串的时候加上{xxx} print('123abd中午'.isalnum()) #判断字符串中是否都是字母或数字或中文 print('1513'.isdigit()) #判断字符串是否是整形 print('1165162'.isnumeric()) #检测字符串是否只由数字组成 print('31351'.isidentifier()) #判断是否是非法变量 print('anc'.islower()) #判断是否全是小写 print('ABD'.isupper()) #判断是否全是大写 print('ABD'.isspace()) #判断是否全是空格 print('My Name'.istitle()) #判断是否是标题(每个单词首字母是否大写) print('My Name'.lower()) #全部变小写 print('My Name'.upper()) #全部变大写 print('My Name'.swapcase()) #大写的元素变小写,小写的元素变大写 print('My Name'.ljust(10,'*')) #内容左边靠,剩下的用“*”填充 print(' My Name\n'.strip()) #清除开头结尾的空格和换行符\n print('My Name'.replace('Name','Car',1))#将一个“Name”替换为“Car”,最后参数不填默认修改全部 print('My Name'.rfind('e')) #从右向左检索目标元素,返回其真实的索引值(从左向右) print('My Name Name'.split(' ',1)) #通过指定分隔符对字符串进行分割,数字参数为分割的次数,不填默认分全割 #输出['My', 'Name Name'] print('My Name Name'.rsplit(' ',1))#从右开始通过指定分隔符对字符串进行分割 print('My title title'.title()) #返回'标题化'的字符串,即所有单词首字母大写,其余字母小写