Python 字符串是一种序列数据类型,用于存储和操作文本数据。以下是一些常用的字符串方法:
查找和替换
str.find(sub[, start[, end]]): 返回子字符串sub在字符串中第一次出现的位置,如果不存在则返回-1。str.index(sub[, start[, end]]): 类似于find,但如果子字符串不存在则抛出ValueError。str.replace(old, new[, count]): 返回字符串的副本,所有old子串被替换为new。可选参数count为替换次数。
判断字符串类型
str.isalnum(): 如果字符串至少有一个字符且所有字符都是字母或数字则返回True。str.isalpha(): 如果字符串至少有一个字符且所有字符都是字母则返回True。str.isdigit(): 如果字符串只包含数字则返回True。str.islower(): 如果字符串至少有一个小写字符且所有字符都是小写则返回True。str.isupper(): 如果字符串至少有一个大写字符且所有字符都是大写则返回True。str.isspace(): 如果字符串只包含空白字符则返回True。
大小写转换
str.lower(): 返回字符串的小写副本。str.upper(): 返回字符串的大写副本。str.capitalize(): 返回字符串的副本,首字母大写,其余小写。str.title(): 返回字符串的副本,每个单词的首字母大写。
字符串分割和拼接
str.split(sep=None, maxsplit=-1): 返回一个列表,由字符串根据sep分割成多个部分。str.rsplit(sep=None, maxsplit=-1): 类似于split,但是从右侧开始分割。str.join(iterable): 返回一个字符串,由iterable中的字符串连接而成,str为分隔符。
去除空白字符
str.strip([chars]): 返回字符串的副本,删除前导和尾随的chars(默认为空白字符)。str.lstrip([chars]): 类似于strip,但只删除前导字符。str.rstrip([chars]): 类似于strip,但只删除尾随字符。
其他
str.startswith(prefix[, start[, end]]): 如果字符串以指定的prefix开始则返回True。str.endswith(suffix[, start[, end]]): 如果字符串以指定的suffix结尾则返回True。str.format(*args, **kwargs): 执行字符串格式化操作。str.count(sub[, start[, end]]): 返回子字符串sub在字符串中出现的次数。str.center(width[, fillchar]): 返回一个长度为width的字符串,原字符串居中,两侧由fillchar填充(默认为空格)。
这些方法可以非常方便地处理和操作字符串,使文本处理任务变得更加简单。
实操
# 大小写转换
s1 = 'HelloWorld'
new_s2 = s1.lower()
print(s1, new_s2)
new_s3 = s1.upper()
print(new_s3)
# 字符串分割
e_mail = '123456@qq.com'
lst = e_mail.split('@')
print('邮箱名:', lst[0], '邮箱服务器域名:', lst[1])
# 统计次数
print(s1.count('o'))
# 检索操作
print(s1.find('o')) # o在字符串s1中首次出现的位置
print(s1.find('p')) # -1:没有找到
print(s1.index('o')) # index也可以
# print(s1.index('p')) 但是找不到回报错
# 判断前缀和后缀
print(s1.startswith('H'))
print(s1.startswith('P'))
print('demo.py'.endswith('.py')) # True
print('aaa.txt'.endswith('.txt')) # True
实操2
s = 'HelloWorld'
# 字符串的替换
new_s = s.replace('o', '你好', 1) # 最后一个参数是奇幻次数,默认全部替换
print(new_s)
# 字符串在指定的宽度范围内居中
print(s.center(20))
print(s.center(20, '-'))
# 去掉字符串左右的空格
s = ' Hello World '
print(s.strip()) # 去左右空格
print(s.lstrip()) # 去左空格
print(s.rstrip()) # 去右空格
# 去掉指定的字符
s3 = 'dl-HelloWorld'
print(s3.strip('ld')) # 只要是包含ld的字符都被去掉,与顺序无关
print(s3.lstrip('ld')) # 去左侧,包含ld的
print(s3.rstrip('ld')) # 去右侧,包含ld的
1057

被折叠的 条评论
为什么被折叠?



