1.字符串的定义
- 概念:字符串是一个有序的字符序列
- 作用:用来保存 中文 字母 或者 符号
- 格式:
字符串名 = '字符1字符2...'
-
特殊的字符串–空字符串
-
可以用以下两种形式表达
字符串名 = '' 字符串名 = str()
-
-
如果需要保留文本格式,就需要利用三引号(类似注释)
"""你好
世界
"""
- 保留 “” 或者 ‘’
- 保留 “” 需要在外面加 ‘’ ,反之加 “”
- ‘“hello”’
- “‘world’”
- 保留 “” 需要在外面加 ‘’ ,反之加 “”
2.下标索引
3.切片
-
作用:
- 用来截取字符串中的某个字符或者字符串片段
-
格式:字符串名[起始位置(包含):终止位置(不包含):步长]
结果 = 字符串名[start: stop: step]
-
注意:
- 起始位置不输入时,默认为0位 即字符串的第一位
- 终止位置不输入时,默认为字符串的长度,即取到字符串最后一位(含最后一位)
- 步长不输入时,默认为1
- stop 是一个开区间
- step 正数则是从左到右,负数 从右到左
- step 每隔(step-1) 个字符 取一个字符
4.字符串常见操作
-
1. find
-
检测 str 是否包含在 mystr中,如果是返回开始的索引值,否则返回-1
-
格式: 字符串名.find(“要查找的字符或字符串” ,起始位置,终止位置)
-
不输入起始位置和终止位置时,默认为全部
mystr.find(str, start, end)
-
-
2. index
-
跟find()方法一样,只不过如果str不在 mystr中会报一个异常
-
因为存在报错的可能,所以同种情况一般不使用index,而是用find,这样不会影响程序的运行
-
格式: 字符串名.index(“要查找的字符或字符串” ,起始位置,终止位置)
-
不输入起始位置和终止位置时,默认为全部
mystr.index(str, start, end)
-
-
3. count
-
返回 str在start和end之间 在 mystr里面出现的次数
-
格式: 字符串名.count(“要查找的字符或字符串” ,起始位置,终止位置)
-
不输入起始位置和终止位置时,默认为全部
mystr.count(str, start, end)
-
-
4.replace
-
5. split
-
以 str 为分隔符切片 mystr,如果 maxsplit有指定值,则仅分隔 maxsplit 个子字符串
-
格式: 字符串名.split(“作为分隔的字符”,分隔次数)
- x应小于等于分隔字符存在的次数,不然将等同于全部分隔
mystr.split(str=" ", x)
- 不输入分隔次数时,默认为全部分隔
- 作为分隔的字符将被直接去除
- split 会将字符串变成列表(list)类型的数据
-
-
6. capitalize
-
把字符串的第一个字符大写
-
格式: 字符串名.capitalize()
mystr.capitalize()
-
-
7. title
-
把字符串的每个单词首字母大写
-
格式: 字符串名.title()
mystr.title()
-
-
8. startswith
-
检查字符串是否是以 判断字符 开头, 是则返回 True,否则返回 False
-
格式: 字符串名.startswith(“判断字符”)
mystr.startswith("判断字符")
-
-
9. endswith
-
检查字符串是否是以 判断字符 结束, 是则返回 True,否则返回 False
-
格式: 字符串名.endswith(“判断字符”)
mystr.endswith("判断字符")
-
-
10. lower
-
转换 mystr 中所有大写字符为小写
-
格式:字符串名.lower()
mystr.lower()
-
-
11. upper
-
转换 mystr 中的小写字母为大写
-
格式:字符串名.upper()
mystr.upper()
-
-
12. ljust
- 返回一个原字符串左对齐,并使用空格填充至长度 width 的新字符串
- 格式:字符串名.ljust(width)
mystr.ljust(width)
-
13. rjust
- 返回一个原字符串右对齐,并使用空格填充至长度 width 的新字符串
- 格式:字符串名.rjust(width)
mystr.rjust(width)
-
14. center
- 返回一个原字符串居中,并使用空格填充至长度 width 的新字符串
- 格式:字符串名.center(width)
mystr.center(width)
- (ljust,rjust,center)实质是mystr.ljust(width,“填充字符”)
- 不输入填充字符时,默认为空格
- 有其他需要的时候可以对其更改
-
15. lstrip
-
删除 mystr 左边的空白字符
-
格式:字符串名.lstrip()
mystr.lstrip()
-
-
16. rstrip
-
删除 mystr 字符串末尾的空白字符
-
格式:字符串名.rstrip()
mystr.rstrip()
-
-
17. strip
-
删除 mystr 字符串末尾的空白字符
-
格式:字符串名.strip()
mystr.strip()
- 在(lstrip,rstrip strip)中,空白字符包含(\n)换行,(\t)tap,即代码缩进量,空格 三种
- 当在(lstrip,rstrip strip)后的括号中输入了数据,分别代表在mystr左侧,右侧,两侧,将该数据进行删除,若该数据在内部,不在左侧,右侧,两侧,则不会更改。
-
-
18. rfind
-
类似于 find()函数,不过是从右边开始查找.
-
格式: 字符串名.rfind(“要查找的字符或字符串” ,起始位置,终止位置)
-
不输入起始位置和终止位置时,默认为全部
mystr.rfind(str, start, end)
-
-
19. rindex
- 同上
-
20. partition
-
把mystr以str分割成三部分,str前,str和str后
-
格式: 字符串名.partition(str)
mystr.partition(str)
-
-
21. rpartition
-
类似于 partition()函数,不过是从右边开始
mystr.rpartition(str)
-
partition和rpartition会把字符串数据更改为元组(tuple)输出,同样其本身具有不可更改性
-
-
22. splitlines
-
按照行分隔,返回一个包含各行作为元素的列表
-
格式:字符串名.splitlines()
- 本质是识别字符串中的换行符\n,以此为界对字符串进行分隔,同时将输出list类型数据
mystr.splitlines()
-
-
23. isalpha
-
如果 mystr 所有字符都是字母 则返回 True,否则返回 False
-
格式:
mystr.isalpha()
-
-
24. isdigit
-
如果 mystr 所有字符都是数字 则返回 True,否则返回 False
-
格式:
mystr.isdigit()
-
-
25. isalnum
-
如果 mystr 所有字符都是字母或者数字(可以均有) 则返回 True,否则返回 False
-
格式:
mystr.isalnum()
-
-
26. isspace
-
如果 mystr 所有字符都是空格 则返回 True,否则返回 False
-
格式:
mystr.isspace()
-
-
27. join
-
mystr 中每个元素后面插入str,构造出一个新的字符串
-
格式:需要插入的字符串名.join(被插入数据的可迭代对象名)
str.join(mystr)
-
-
28.help
-
内置函数 help
-
如果忘记了一个类型的方法, 可以通过help函数查看
-
实际开发中,可能遇见我们不曾学过的数据类型 如果查看这个类型的相关方法
help(str) help(str.count) help(类型,该类型内的某个函数)
-
-