python中提供了丰富的字符串处理函数,很多都可以以不同方式处理大小写的转换
常用的有这些
# 我多敲了好多回车...只是为了看得清楚一点
>>> notMe = 'lapland Stark is an elf'
>>> print("source string is ", notMe)
source string is lapland Stark is an elf
>>>
>>> print("swapcase demo", notMe.swapcase(), sep='\t')
swapcase demo LAPLAND sTARK IS AN ELF
>>>
>>> print("upper demo", notMe.upper(), sep='\t')
upper demo LAPLAND STARK IS AN ELF
>>>
>>> print("lower demo", notMe.lower(), sep='\t')
lower demo lapland stark is an elf
>>>
>>> print("title demo", notMe.title(), sep='\t')
title demo Lapland Stark Is An Elf
>>>
>>> print("istitle demo", notMe.istitle(), sep='\t')
istitle demo False
>>>
>>> print("islower demo", notMe.islower(), sep='\t')
islower demo False
>>>
>>> print("capitalize demo", notMe.capitalize(), sep='\t')
capitalize demo Lapland stark is an elf
>>>
>>> print("find demo", notMe.find('r'), sep='\t')
find demo 11
>>>
>>> print("count demo", notMe.count('l'), sep='\t')
count demo 3
>>>
>>> print("split demo", notMe.split(' '), sep='\t')
split demo ['lapland', 'Stark', 'is', 'an', 'elf']
>>>
>>> print("join demo", '.'.join(notMe), sep='\t')
join demo l.a.p.l.a.n.d. .S.t.a.r.k. .i.s. .a.n. .e.l.f
>>>
>>> print("len demo", len(notMe), sep='\t')
len demo 23
大致分类如下:
- 长度
字符串长度获取:len(str)
- 字母处理
- 全部大写:
str.upper()
- 全部小写:
str.lower()
- 大小写互换:
str.swapcase()
- 首字母大写,其余小写:
str.capitalize()
- 首字母大写:
str.title()
- 格式化相关
- 获取固定长度,右对齐,左边不够用空格补齐:
str.ljust(width)
- 获取固定长度,左对齐,右边不够用空格补齐:
str.ljust(width)
- 获取固定长度,中间对齐,两边不够用空格补齐:
str.ljust(width)
- 获取固定长度,右对齐,左边不足用0补齐
- 字符串搜索相关
- 搜索指定字符串,没有返回-1:
str.find(‘t’)
- 指定起始位置搜索:
str.find(‘t’,start)
- 指定起始及结束位置搜索:
str.find(‘t’,start,end)
- 从右边开始查找:
str.rfind(‘t’)
- 搜索到多少个指定字符串:
str.count(‘t’)
- 上面所有方法都可用index代替,不同的是使用index查找不到会抛异常,而find返回-1
- 字符串替换相关
- 替换old为new:
str.replace(‘old’,’new’)
- 替换指定次数的old为new:
str.replace(‘old’,’new’,maxReplaceTimes)
- 字符串去空格及去指定字符
- 去两边空格:
str.strip()
- 去左空格:
str.lstrip()
- 去右空格:
str.rstrip()
- 去两边字符串:
str.strip(‘d’)
,相应的也有lstrip,rstrip - 按指定字符分割字符串为数组:
str.split(' ')
(默认按空格分隔)
- 字符串判断相关
- 是否以start开头:
str.startswith(‘start’)
- 是否以end结尾:
str.endswith(‘end’)
- 是否全为字母或数字:
str.isalnum()
- 是否全字母:
str.isalpha()
- 是否全数字:
str.isdigit()
- 是否全小写:
str.islower()
- 是否全大写:
str.isupper()