字符串方法测试
# 测试用例
a = 'i am Chinese,I like Chinese!'
aa = 'it contains tab!'
print(len(a))
# 首字母大写,其它全部小写
b = a.capitalize()
print(a)
# 字符串方法返回新字符串,不改变原字符串
print(b)
# 居中显示,第一个参数width,第二个参数fillchar
print(a.center(14))
print(a.center(14,'#'))
print(a.center(28,'#'))
# 当width小于字符串长度时,操作无效
print(a.center(40))
# fillchar默认为空格
print(a.center(40,'#'))
# 计算sub在字符串中出现的次数,S.count(sub[, start[, end]]) -> int
print(a.count('i'))
print(a.count('i',4))
print(a.count('i',4,25))
# start和end确定搜寻范围,默认为0和-1
# 使用指定编码方式编码,str.encode(enconding="utf-8",errors="strict")
#错误类型:strict,ignore,replace,xmlcharrefreplace,backslashreplace
print(a.encode())
# 判断字符串是否以suffix结尾,suffix可取元素或元组
# S.endswith(suffix[, start[, end]]) -> bool
# 取元素单对象检索
print(a.endswith('!'))
# 取元组多对象检索
print(a.endswith(('!','n')))
print(a.endswith('!',2,25))
print(a.endswith('!',2))
# 用空格替换字符串中的制表符,str.expandtabs(tabsize=8)
print(aa)
print(aa.expandtabs())
print(aa.expandtabs(32))
# ????这个地方不管换什么数字,输出都一样是为什么???
# 在限定范围内查找sub所在的最小下标,未找到返回-1
# S.find(sub[, start[, end]]) -> int
print(a.find('e'))
print(a.find('e',10,25))
# 功能同find,未找到时触发ValueError
# S.index(sub[, start[, end]]) -> int
print(a.index('e'))
# 错误打印还不会,先放着
# 在限定范围内查找sub所在的最大下标,未找到时返回-1
# S.rfind(sub[, start[, end]]) -> int
print(a.rfind('e'))
# 功能同rfind,未找到时触发ValueError
# S.rindex(sub[, start[, end]]) -> int
print(a.rindex('e'))
# 判断字符串是否只包含字母/数字
print(a.isalnum())
# 判断字符串是否只含有字母
print(a.isalpha())