字符串常见操作
字符串的常见操作包括:
- 获取长度:
len
- 查找内容:
find
,index
,rfind
,rindex
- 判断:
startswith
,endswith
,isalpha
,isdigit
,isalnum
,isspace
- 计算出现次数:
count
- 替换内容:
replace
- 切割字符串:
split
,rsplit
,splitlines
,partition
,rpartition
- 修改大小写:
capitalize
,title
,upper
,lower
- 空格处理:
ljust
,rjust
,center
,lstrip
,rstrip
,strip
- 字符串拼接:
join
注意:在Python中,字符串是不可变的!所有的字符串相关方法,都不会改变原有的字符串,都是返回一个结果,在这个新的返回值里,保留了执行后的结果!
len
len
函数可以获取字符串的长度。
mystr = '今天天气好晴朗,处处好风光呀好风光'
print(len(mystr)) # 17 获取字符串的长度
查找
查找相关的方法,使用方式大致相同,但是略有区别。
1. find
查找指定内容在字符串中是否存在,如果存在就返回该内容在字符串中第一次出现的开始位置索引值,如果不存在,则返回-1.
语法格式:
代码语言:javascript复制S.find(sub[, start[, end]]) -> int
示例:
代码语言:javascript复制mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.find('好风光')) # 10 '好风光'第一次出现时,'好'所在的位置
print(mystr.find('你好')) # -1 '你好'不存在,返回 -1
print(mystr.find('风', 12)) # 15 从下标12开始查找'风',找到风所在的位置试15
print(mystr.find('风光',1,10)) # -1 从下标1开始到12查找"风光",未找到,返回 -1
2. rfind
类似于 find()
函数,不过是从右边开始查找。
mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.rfind('好')) # 14
3. index
跟 find()
方法一样,只不过,find方法未找到时,返回-1,而str未找到时,会报一个异常。
语法格式:
代码语言:javascript复制S.index(sub[, start[, end]]) -> int
4. rindex
类似于 index()
,不过是从右边开始。
判断
Python提供了非常丰富的方法,可以用来对一个字符串进行判断。
1. startswith
判断字符串是否以指定内容开始。
语法格式:
代码语言:javascript复制S.startswith(prefix[, start[, end]]) -> bool
示例:
代码语言:javascript复制mystr = '今天天气好晴朗,处处好风光呀好风光'
print(mystr.startswith('今')) # True
print(mystr.startswith('今日')) # False
2. endswith
判断字符串是否以指定内容结束。
代码语言:javascript复制mystr = '今天天气好晴朗,处处好风光呀好风光"
print(mystr.endswith("风光")) # True
print(mystr.endswith("好风光")) # False
#### 3. isalpha
判断字符串是否全是字母字符。
```python
mystr = 'Hello'
print(mystr.isalpha()) # True
mystr = 'Hello123'
print(mystr.isalpha()) # False
4. isdigit
判断字符串是否全是数字字符。
代码语言:javascript复制mystr = '12345'
print(mystr.isdigit()) # True
mystr = '123abc'
print(mystr.isdigit()) # False
5. isalnum
判断字符串是否全是字母或数字字符。
代码语言:javascript复制mystr = 'Hello123'
print(mystr.isalnum()) # True
mystr = 'Hello!123'
print(mystr.isalnum()) # False
6. isspace
判断字符串是否全是空格字符。
代码语言:javascript复制mystr = ' '
print(mystr.isspace()) # True
mystr = ' Hello '
print(mystr.isspace()) # False