python数据类型之字符串(一)
主要讲解字符串的特点、函数、切片等
一、特点:
①是不可变类型,则它的修改方法都是生成新的字符串
②是有序集合
二、字符串常用操作
1、find() # 返回被查找的字符串的最低索引,没有则返回-1
str.find(string, beg=0, end=len(string))
# string:查找对象、beg:查找初始索引,默认从0开始、end:查找结束索引,默认为字符串长度
# eg:
str.find('abac_acd', 'c', 2) # 从下标2开始找,找到c的索引,返回3
'abac_acd'.find('a', 1) # 从下标1开始找,找到a,找到的a在整个字符串中的最低索引是2,返回2
2、index() # 查找指定字符串的最低索引,没有则抛出异常。同find的区别就是查找不到是,find返回-1,index抛出异常
3、count() # 返回一个特定值在字符串中出现的次数
4、startswith()
# 检验开头字符,返回True/False;endwith()检验结尾字符,返回True/False
print('cae'.startswith('c')) # True
5、swapcase()
# 大小写转换
print('aBc'.swapcase()) # 返回'AbC'
6、capitalize()
# 字符串中第一个串的首字母大写,其余字母小写
print('aBc'.capitalize()) # 返回'Abc'
7、title()
# 字符串中每个串的首字母大写,其余字母小写
print('my JOB IS testing'.title()) # 返回'My Job Is Testing'
8、upper()
# 所有字母大写
print('my JOB IS testing'.upper()) # 返回'MY JOB IS TESTING'
9、lower() # 所有字母小写
# 所有字母小写
print('my JOB IS testing'.lower()) # 返回'my job is testing'
10、replace()
# 将新字符替换掉旧字符
print('joy'.replace('y', 'e'))
# 将空格删掉
print('a bc cb a '.replace(' ', ''))
11、strip()
# 删除字符串头尾指定的字符,默认删除首尾空格
print(' a b c '.strip()) # 删除首尾空格
print(' a b c '.lstrip()) # 删除首空格
print(' a b c '.rstrip()) # 删除尾空格
print('abcbcadb'.strip('abc')) # 因为首尾都连续包含a/b/c的字符,都会删除,最终打印d
12、split()+join()
print(''.join('a bc cb a '.split(' '))) # 先切割,再连接,返回'abccba'
13、split()
# split(str='', num=) 以字符串中指定字符切割成num+1 个子串,切割后为列表
# str是分割符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等
print('a bc cb a '.split(' ')) # 返回['a', 'bc', 'cb', 'a', '']
print('a bc cb a '.split(' '), 1) # 切割成2个字串,返回['a', 'bc']
14、join()
# 将序列(字符串、列表、元组)中的元素以指定的分隔符连接生成新的字符串,分隔符可为空
tup1 = ('a', 'b')
lst1 = ['a', 'b', 'c']
print('-'.join(tup1))
print(''.join(lst1))
15、islower()-判断字符串是否全小写,如果是则返回True,否则返回False。判断类只举例这一个
print('abc'.islower()) # 返回True
16、字符串切片
# 1、包头不包尾
# 2、从前往后,步长为正;从后往前,步长为负。否则返回空
str1 = 'abc&bdf&efg'
print("返回整个字符串", str1[:])
print("返回索引0到2的字符", str1[:3])
print("返回索引0到-2的字符'abc&bdf&ef',步长为正", str1[:-1])
print("反转字符串", str1[-1::-1])
print("从后往前,步长为负,但此处默认步长是1,所以返回空[]", list(str1[-1:0]))
【推荐】国内首个AI IDE,深度理解中文开发场景,立即下载体验Trae
【推荐】编程新体验,更懂你的AI,立即体验豆包MarsCode编程助手
【推荐】抖音旗下AI助手豆包,你的智能百科全书,全免费不限次数
【推荐】轻量又高性能的 SSH 工具 IShell:AI 加持,快人一步
· 无需6万激活码!GitHub神秘组织3小时极速复刻Manus,手把手教你使用OpenManus搭建本
· C#/.NET/.NET Core优秀项目和框架2025年2月简报
· Manus爆火,是硬核还是营销?
· 终于写完轮子一部分:tcp代理 了,记录一下
· 【杭电多校比赛记录】2025“钉耙编程”中国大学生算法设计春季联赛(1)