字符串是Python中最常用的数据类型之一。Python提供了丰富的字符串处理方法,主要有:
1. 检测和转换:
- str.isdigit() 检测字符串是否只包含数字。
- str.islower() 检测字符串是否只包含小写字母。
- str.upper() 转换字符串为大写。
- str.lower() 转换字符串为小写。
- str.title() 将字符串的每个单词首字母转换为大写。
例如:
'string'.isdigit() # False
'string123'.isdigit() # False
'123'.isdigit() # True
'hello'.islower() # True
'Hello'.islower() # False
'hello'.upper() # 'HELLO'
'HELLO'.lower() # 'hello'
'hello world'.title() # 'Hello World'
2. 搜索和替换:
- str.find(sub) 查找子串第一次出现的索引。
- str.replace(old, new) 替换字符串中的指定子串。
- re.search(pat, str) 使用正则表达式搜索字符串。
- re.sub(pat, new, str) 使用正则表达式替换字符串。
例如:
'hello'.find('l') # 2
'hello'.replace('l', 'x') # 'hexlox'
import re
re.search('x', 'hello') # None
re.search('l', 'hello') # <re.Match object; span=(2, 3), match='l'>
re.sub('l', 'x', 'hello') # 'hexxo'
3. 截取和拆分:
- str[start:end] 截取字符串的一部分。
- str.strip() 移除字符串开头和结尾的空格。
- str.split() 根据分隔符拆分字符串。
例如:
'hello'[1:3] # 'el'
' hello '.strip() # 'hello'
'a,b,c,d'.split(',') # ['a', 'b', 'c', 'd']
4. 格式化:
- str.format() 格式化字符串。
- f-string(3.6+)格式化字符串。
例如:
'{}, {}'.format('hello', 'world') # 'hello, world'
f'{"hello"}, {"world"}' # 'hello, world'