一、与大小写相关

# 第一部分:大小写相关,输出的结果仍然是字符串

# capitalize()
# title() 
# upper()  
# lower()
# swapcase()

s='marry is a beautiful girl!'

# capitalize():将字符串第一个字符转换为大写字母
print(s.capitalize())
# 输出:Marry is a beautiful girl!

# title():每个单词的首字母大写
print(s.title())
# 输出:Marry Is A Beautiful Girl!

s1='abc def'
# upper():将字符串全部转换为大写字母
print(s1.upper())
# 输出:ABC DEF

s2='HELLo wORld'
# lower():将字符串全部转换为小写字母
print(s2.lower())
# 输出:hello world

# swapcase():将字符串中小写字母转换为大写字母,将大写字母转换为小写字母
print(s2.swapcase())
# hellO WorLD

二、判断字符串中字符类型

# 第二部分:判断字符串中的字符类型,输出结果为True或False

# startswith(字符串)
# endswith(字符串)
# isalnum()
# isalpha()
# isdigit()
# islower()
# isupper()
# istitle()
# isspace()

s1='abcdef12'

# startswith(字符串):是否以该字符串开头
#s1是否以ab开头
print(s1.startswith('ab'))
# 输出:True

# endswith(字符串):是否以该字符串结尾
# s1是否以ab结尾
print(s1.endswith('ab'))
# 输出:False

# isalnum():是否全为数字或字母
print(s1.isalnum())
# 输出:True

# isalpha():是否全为字母
print(s1.isalpha())
# 输出:False

# isdigit():是否全为数字
print(s1.isdigit())
# 输出:False

s2='HELLo wORld'

# islower():是否全部小写
print(s2.islower())
# 输出:False

# isupper():是否全为大写
print(s2.isupper())
# 输出:False

# istitle():每个单词首字母是否全为大写
print(s2.istitle())
# 输出:False

# isspace():字符是否为空格
print(s2.isspace())
# 输出:False

 三、字符串替换

# 第三部分:字符串替换

# replace(字符串1,字符串2)
# replace(字符串1,字符串2,次数n)

s1='abc def12'
# replace(字符串1,字符串2):用字符串2替换字符串1
# s1字符串中用hello替换abc
print(s1.replace('abc','hello'))
# 输出:hello def12

s1='hello world'
# replace(字符串1,字符串2,次数n):从左向右,用字符串2替换字符串1 n次
# s1字符串中用p替换l 2次
print(s1.replace('l','p',2))
# 输出:heppo world

四、去空格

# 第四部分:去空格

# strip()
# lstrip()
# rstrip()

# strip():去两边空格
print('   hello  '.strip())
# 输出:hello

# lstrip():去左边空格
print('  hello     '.lstrip())
# 输出:hello     

# rstrip():去右边空格
print('  hello     '.rstrip())
# 输出:  hello

 五、用特定字符串连接字符串

# 第五部分:用特定字符串连接字符串

# join(字符串集合)

# join(字符串集合):用指定的字符串将字符串集合中的字符串连接
print('-&'.join(['a','b','e']))
# 输出:a-&b-&e

 六、用字符串中特定符分割字符串

# 第六部分:用字符串中的特定符分割字符串

# split()
# split(字符串)

# split():默认按空格分割
print('he is a bad boy'.split())
# 输出:['he', 'is', 'a', 'bad', 'boy']

# split(字符串):括号内填入指定字符串,以该指定进行分割字符串
print('h*e*ll*w'.split('*'))
# 输出:['h', 'e', 'll', 'w']

七、 搜索指定字符串

# 第七部分:搜索

# find(字符串)
# find(字符串,begin,end)
# index(字符串)
# index(字符串,begin,end)
# rfind(字符串)
# rfind(字符串,begin,end)
# count(字符串)

# find(字符串):搜索指定字符串,若存在,返回第一个找到位置的索引值;若没有,返回-1
# 字符串的索引值从0开始
print('hello world'.find('el'))
# 输出:1

# find(字符串,begin,end):字符串为指定要搜索的字符串,begin为开始搜索的索引位置,end为结束搜索的位置
# 返回的是该字符串第一次出现位置的索引
print('hello woeld'.find('el',2,10))
# 输出:8

# index(字符串):作用和find(字符串)相同,差别在于index()若未找到,会抛出异常ValueError: substring not found
print('hello woeld'.index('el'))
# 输出:1

# index(字符串,begin,end):作用和find(字符串,begin,end)相同,差别在于index()若未找到,会抛出异常ValueError: substring not found
# 返回的是该字符串第一次出现位置的索引
print('hello woeld'.index('el',2,10))
# 输出:8

# rfind(字符串):返回字符串最后一次出现的位置的索引
print('hello woeld'.rfind('el'))
# 输出:8

# rfind(字符串,begin,end):字符串为指定要搜索的字符串,begin为开始搜索的索引位置,end为结束搜索的位置
# 返回的是该字符串最后一次出现的位置的索引
print('hello woeld'.find('el',0,6))
# 输出:1

# count(字符串):统计字符串出现的总次数
print('elelel'.count('el'))
# 输出:3

八、编码解码

# encode decode

# encode:编码
# encode(encoding='UTF-8',errors='strict'):以encoding指定的编码格式编码字符串,如果出错默认报一个ValueError的异常,除非errors指定的是'ignore'或'replace'

msg='上课啦!'

result=msg.encode('UTF-8')
print(result)
# 输出:b'\xe4\xb8\x8a\xe8\xaf\xbe\xe5\x95\xa6\xef\xbc\x81'


# decode:解码
result1=result.decode('UTF-8')
print(result1)
# 输出:上课啦!

更多字符串函数可以在  “字符串.”出现的一系列函数中查看!