字符串
在Task01中已经介绍了一些关于字符串的基本操作,现在再补充一些:
1.对所有字符串做大小写转换(大写–>小写,小写–>大写):
s='abc XYZ'
print(s.swapcase()) #ABC xyz
2.判断字符串类型:
s='34'
print(s.isdigit()) #True 检测字符串是否只由数字组成
s='abc'
print(s.isalpha()) #True
m='abc123'
print(m.isalpha()) #False
#判断字符串是否只由字母组成
s='abc'
print(s.isalnum()) #True
m='abc123'
print(m.isalnum()) #True
n='abc!'
print(n.isalnum()) #False
#检测字符串是否由字母和数字组成
3.判断是否小写、大写、首字母大写:
s='abc'
print(s.islower()) #True
s1='Abc'
print(s1.islower()) #False
m='abc'
print(m.isupper()) #False
m1='ABC'
print(m1.isupper()) #True
n='abc'
print(n.istitle()) #False
n1='Abc'
print(n1.istitle()) #True
4.字符串搜索:
print('xyabxyxy'.count('xy')) #3 在整个字符串查找
print('xyabxyxy'.count('xy',1)) #2 从index=1查找,范围是‘yabxyxy’
print('xyabxyxy'.count('xy',1,7)) #1 从index=1到index=7,不包括end边界,范围是‘yabxyx’
5.判断字符串的开头和结尾:
print('xyabxyxy'.endswith('xy')) #True
print('xyabxyxy'.endswith('xya',1)) #False
print('xyabxyxy'.startswith('xy',1,7)) #False
print('xyabxyxy'.startswith('xy')) #True
6.搜索子串并返回索引位置:
print('xyabxyxy'.find('xy')) #0
print('xyabxyxy'.find('xy',1)) #4
print('xyabxyxy'.rfind('xy')) #6
print('xyabxyxy'.index('xy')) #0
find()搜索字符串S中是否包含子串sub,如果包含,则返回sub的索引位置,否则返回"-1"。可以指定起始start和结束end的搜索位置。
index()和find()一样,唯一不同点在于当找不到子串时,抛出ValueError错误。
rfind()则是返回搜索到的最右边子串的位置,如果只搜索到一个或没有搜索到子串,则和find()是等价的。
同理rindex()。
6.替换子串:
print('xyabxyxy'.replace('xy','XY')) #XYabXYXY
print('xyabxyxy'.replace('xy','XY',1)) #XYabxyxy 只替换前一个
对字符串的操作补充了几个方法,如果以后遇到,继续补充。
序列
序列的分类
常见序列类型包括字符串(普通字符串和unicode字符串),列表和元组.所谓序列,即成员有序排列,可通过下标访问。
这些序列类型在前面都已经介绍过了,包括索引、切片、添加删除元素、统计等等,这里就不再重复了。(PS:列表可变而元组不可变)