1.字符串查找方法 find()
说明:被查找字符是否存在于当前字符串中。
格式:字符串.find(被查找字符)
结果:如果存在则返回第一次出现 被查找字符位置的下标
如果不存在则返回 -1
需求:
1. 现有字符串数据: '我是中国人'
2. 请设计程序, 实现判断"中国人"和"外国人"是否存在于数据中
3. 要求如果数据存在, 则输出数据所在位置
# 1. 现有字符串数据: '我是中国人'
# 2. 请设计程序, 实现判断"中国人"和"外国人"是否存在于数据中
# 3. 要求如果数据存在, 则输出数据所在位置
my_str = "我是中国人"
# sub_str = "中国人"
sub_str = "外国人"
result = my_str.find(sub_str)
if result == -1:print(f'{sub_str}不存在')
else:print(f'{sub_str}存在,下标的位置为{result}')
2.字符串的替换 replace()
说明:将字符串中的 old 字符串 替换为 new 字符串
格式:字符串.replace(old, new, count)
- old 原字符串,被替换的字符串
- new 新字符串,要替换为的字符串
- count 一般不写,表示全部替换;可以指定替换的次数
结果:会返回一个替换后的完整的字符串
注意: 字符串属于不可变数据类型, 所以修改并不会影响原来的内容,原字符串不会改变的
my_str = 'good good study'# 需求1:将 good 变为 GOOD
my_str1 = my_str.replace('good', 'GOOD')
print('my_str :', my_str)
print('my_str1:', my_str1)# 需求2:将第一个 good 替换为 Good
my_str2 = my_str.replace('good', 'Good', 1)
print('my_str2:', my_str2)# 需求;将第二个 good 替换为 Good
# 方法:先整体替换为 Good, 再将替换后的 第一个Good 替换为 good
my_str3 = my_str.replace('good', 'Good').replace('Good', 'good', 1)
print('my_str3:', my_str3)
3.字符串拆分 split()
说明:将字符串按照指定的字符串 sep 进行分隔
格式:字符串.split(sep)
- sep , 按照 sep 分隔, 可以不写, 默认按照空白字符(空格 \t \n)分隔
结果:返回列表,列表中的每个数据就是分隔后的字符串
str1 = 'hello Python\tand itcast and\nitheima'# 1. 默认 按照空白字符分隔
list1 = str1.split()
print(list1) # ['hello', 'Python', 'and', 'itcast', 'and', 'itheima']# 2. 按照 空格分隔
list2 = str1.split(' ')
print(list2) # ['hello', 'Python\tand', 'itcast', 'and\nitheima']# 3. 按照 and 分隔
list3 = str1.split('and')
print(list3) # ['hello Python\t', ' itcast ', '\nitheima']
4.字符串的连接 join()
作用:将字符串插入到列表相邻的两个数据之间,组成新的字符串
格式:字符串.join(容器) # 容器一般是列表 ,
注意:列表中的数据 必须都是字符串才可以
list1 = ['hello', 'Python', 'and', 'itcast', 'and', 'itheima']# 将 列表中数据使用 空格 组成新的字符串
str1 = ' '.join(list1)
print(str1) # hello Python and itcast and itheima# 使用 逗号 连接
str2 = ','.join(list1)
print(str2) # hello,Python,and,itcast,and,itheima# 使用 _*_ 连接
str3 = '_*_'.join(list1)
print(str3) # hello_*_Python_*_and_*_itcast_*_and_*_itheima
扩展:
\t:代表一个 水平制表符,通常显示为四个空格的宽度,这相当于在文档中使用Tab键
\n:表示换行,相当于按一个 回车键
\n\t:表示换行的同时空4个字符
未完待续。。。