好好学python · 字符串(find(),index(),split(),join(),strip(),replace())
Posted 有理想、有本领、有担当的有志青年
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了好好学python · 字符串(find(),index(),split(),join(),strip(),replace())相关的知识,希望对你有一定的参考价值。
字符串
字符串的定义方式
#单引号定义
str = '字符串'
# 双引号定义
str = "字符串"
# 三引号定义能够保存格式
str = '''
你好!
字符串!
'''
# 互相嵌套
str = "你好'字符串'!"
转义字符
续航符 \\
vars = '123' \\
'456'
print(vars)
#123456
换行符 \\n
vars = '岁月是把杀猪刀\\n但对长得丑的人一点办法也没有'
print(vars)
''' 岁月是把杀猪刀
但是对长得丑的人一点办法也没有
'''
光标符 \\r
# \\r出现的位置是光标起始位置,即只识别接收\\r后的内容
vars = '岁月是把杀猪刀\\r但对长得丑的人一点办法也没有'
print(vars)
# 但对长得丑的人一点办法也没有
水平制表符 \\t
#代表四个空格或者一个缩进
vars = '岁月是把杀猪刀\\t但对长得丑的人一点办法也没有'
print(vars)
# 岁月是把杀猪刀 但对长得丑的人一点办法也没有
退格符 \\b
# 没出现一个\\b就将前一个字符删除
vars = '岁月是把杀猪刀\\b\\b但对长得丑的人一点办法也没有'
print(vars)
# 岁月是把杀但对长得丑的人一点办法也没有
反转义字符 \\
# 将转义字符反转义为普通字符
vars = '岁月是把杀猪刀,\\\\n但是他对长得丑的人一点办法也没有'
print(vars)
#岁月是把杀猪刀,\\n但是他对长得丑的人一点办法也没有
字符串相关的操作
基本操作
- 字符串 + 操作
res = '将进酒 '+'李白'
print(res)
#将进酒李白
- 字符串 * 操作
vars = '鸡你太美'
print(vars*5)
# 鸡你太美鸡你太美鸡你太美鸡你太美鸡你太美
-
字符串 [] 切片操作
-
字符串[开始值:结束值:步进值]
开始值:默认为0,结束值默认是最后一个下标,步进值默认为1
# - 字符串 [] 切片操作 ****
# 字符串的索引操作,字符串中只能使用[]下标 访问,不能修改
'''
0 1 2 3 4 5 6 7 8 9 10 ....
君不见,黄河之水天上来,奔流到海不复回
-4 -3 -2 -1
'''
vars = '君不见,黄河之水天上来,奔流到海不复回'
# print(vars[5])
# print(vars[-5])
'''
字符串的切片操作
str[开始值:结束值:步进值]
开始值:默认为0,结束值默认是最后一个下标,步进值默认为1
'''
# print(vars)
# print(vars[5]) # 写一个值就是获取指定下标的元素
# print(vars[2:5]) # 从2下标开始取值,一直到下标5之前,能取到2,取不到5
# print(vars[4:8:2]) # 黄河之水 ==> 黄之
# print(vars[::]) # 从头取到尾
# print(vars[::2]) # 从头取到尾,每隔一个取一个
# print(vars[::-1]) # 字符串倒转过来
# print(vars[::-2]) # 字符串倒转过来,每隔一个取一个
# print(vars[1::]) # 不见,黄河之水天上来,奔流到海不复回
# print(vars[1::2]) # 不,河水上,流海复
字符串格式化的方法
- format
- f
# 1 format 普通方式
a = '李白'
vars = '乘舟将欲行,互闻岸上踏歌声'.format(a)
vars = '乘舟将欲行,互闻岸上'.format(a,'踏歌声')
# 2 format 通过索引传参 0 1 2
vars = '2乘舟将欲行,互闻岸上1'.format('a','b','c')
# 3 format 关键字传参
vars = 'a乘舟将欲行,互闻岸上b'.format(a='李白',b='踏歌声')
# 4 format 容器类型数据传参
vars = '豪放派:0[0],婉约派:0[1],蛋黄派:0[2]'.format(['李白','辛弃疾','达利园'])
data = 'a':'辛弃疾','b':'蛋黄派'
vars = 'a乘舟将欲行,互闻岸上b'.format(**data)
# 3.7中新增的 格式化方法 f方法
vars = f'data["a"]乘舟将欲行,互闻岸上data["b"]'
print(vars)
# 限定小数的位数
vars = '圆周率是多少::.2f'.format(3.1415926)
print(vars)
字符串相关函数
英文字符与字符检测相关函数
# 字符串相关函数 (一) 英文字符与字符检测相关函数
vars = 'iloveyou'
# 返回字符串的副本,该字符串的首个字符大写,其余小写。
# str.capitalize()
res = vars.capitalize()
# 把字符串中的一个单词的首字母大写
res = vars.title()
# 把字符串全部改为 大写
res = vars.upper()
# 把字符串全部改为 小写
res = vars.lower()
# 字符串中的大小写字符转换,大写转小写,小写转大写
res = vars.swapcase()
# 检测字符串是否为全部大写字母组成
res = vars.isupper()
# 检测字符串是否为全部小写字母组成
res = vars.islower()
# 检测字符串是否符合标题title的要求
res = vars.istitle()
# 检测字符串是否由数字和字母组成,如果字符串中包含来非数字字母的其它字符,则返回False
res = vars.isalnum()
# 检测字符串是否全部由字符(包含英文字符和中文)组成
res = vars.isalpha()
# 检测字符串是否由纯数字字符组成
res = vars.isdigit()
# 检测当前字符串是否为 空格 字符组成 ' '
res = vars.isspace()
# 检测字符串是否以指定的字符开始的,也可以指定开始和结束的位置
res = vars.startswith('y')
# res = vars.startswith('y',5)
# 检测字符串是否以 指定的字符 结束的,也可以指定开始和结束的位置
# res = vars.endswith('y')
res = vars.endswith('e',1,5)
print(res)
字符串查找函数❤
# ** find() 方法 ,找到则返回字符中符合条件的第一个字符出现的索引位置。未找到返回 -1
res = vars.find('you')
# print(vars[res:res+3])
# index() 方法
# res = vars.index('youe') # 找到则返回索引位置,未找到则报错 ValueError
# print(res)
vars = 'user_admin_id_123'
# split() 方法 可以按照指定的分隔符,把字符串分隔成列表
# res = vars.split('_') # ['user', 'admin', 'id', '123']
res = vars.split('_',2) # ['user', 'admin', 'id_123']
# print(res)
# rsplit() 方法是从右向左进行,从后向前
# res = vars.rsplit('_') # ['user', 'admin', 'id', '123']
res = vars.rsplit('_',2) # ['user_admin', 'id', '123']
# print(res)
# join() 方法 ,使用指定的字符串,把一个容器中的元素链接成一个字符串
varlist = ['user', 'admin', 'id', '123']
res = '_'.join(varlist)
# strip() 去除字符串左右两侧的指定字符
vars = ' zhangsan '
res = vars.strip(' ')
vars = '@admin'
res = vars.strip('@')
# print(vars)
# print(res)
# rstrip() 去除字符串右侧的指定字符, lstrip() 去除字符串左侧的指定字符
# len() 函数可以获取当前字符串的长度
# print(len(vars))
# print(len(res))
# replace() 替换函数
vars = 'iloveyou'
# 找到 love 替换为 live
res = vars.replace('love','live')
vars = 'aabbccddeeabcdef'
# 可以限制替换的次数
res = vars.replace('b','B',2)
# print(res)
以上是关于好好学python · 字符串(find(),index(),split(),join(),strip(),replace())的主要内容,如果未能解决你的问题,请参考以下文章