目录
1. 字符串
2. 创建字符串
3. 索引
4. 切片
5. 字符串是不可变类型
6. dir( ) 函数
7. 拼接-join( )
8. 大小写转换
9. 检索
9. 字符串的分割方法
10. 字符串的修剪
11. 格式化字符串
1. 字符串
字符串就是我们生活中所见的文字,数字,字母,汉字等组合,我们把这些组合称之为串,也就是 python 中的字符串。
2. 创建字符串
- 使用 单引号
- 使用 双引号
- 使用 三个单引号 | 三个双引号
示例:
name = '人生苦短,我用python' print(name) age = "18" print(age) # 在默认的情况下三个单引号或双引号为注释 # 为它赋值后成为预格式化字符,直白说就是保留格式,将代码运行起来看看三个双引号对结果 poem = ''' 从军行七首·其四 青海长云暗雪山,孤城遥望玉门关。 黄沙百战穿金甲,不破楼兰终不还。 ''' print(poem) poems = """ 从军行七首·其四 青海长云暗雪山,孤城遥望玉门关。 黄沙百战穿金甲,不破楼兰终不还。 """ print(poems)
3. 索引
索引也称为下标,你可以把它理解为能够快速查找引导我们查找目标的序号,类似于书本中的目录,电影院的座位号,饭店的桌号等等都可以看作是索引,回归正题我们继续,看下以下的字符串,你不要把它看成整体。
注意:索引越界会导致程序报错
4. 切片
切片为截取,也就是从那开始到那结束,也很好理解来看看吧!
语法:
object[start_index, end_index, [step]]
- start_index: 表示起始值
- end_index_index: 表示结束值,需要注意这里不包含右值
- step: 步长,可选,默认为 步长为 1
注意:切片越界程序会自动处理,而不会报错
1. 获取【酒逢知己饮】
Text = '酒逢知己饮,诗向会人吟' print(Text[0:5]) Text = '酒逢知己饮,诗向会人吟' print(Text[-11:-6])
2. 获取【诗向会人吟】使用省法
Text = '酒逢知己饮,诗向会人吟' # end-index 为空时取到最后 print(Text[6:]) # 俩边为空获取全部 print(Text[:])
3. 步长为 2 切【酒逢知己饮,诗向会人吟】
Text = '酒逢知己饮,诗向会人吟' print(Text[:11:2]) print(Text[::2]) >>> 酒知饮诗会吟
5. 字符串是不可变类型
什么是可变类型,什么是不可变类型?你可以理解为这个类型中的元素能不能发生改变,如果可以就是可变类型,如果不可以就是不可变类型。
很明显,字符串是不可变类型。
6. dir( ) 函数
dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息
dir() 函数不带参数时,返回当前范围内的变量、方法和定义的类型列表;带参数时,返回参数的属性、方法列表。如果参数包含方法__dir__(),该方法将被调用。如果参数不包含__dir__(),该方法将最大限度地收集参数信息
语法:
dir([object])
- object -- 对象、变量、类型。
示例:
7. 拼接-join( )
join( ) 方法用于将序列中的元素以指定的字符连接生成一个新的字符串
语法:
sep.join(iterable)
- 以 sep 作为分隔符,将 iterable 中所以的元素合并为一个新的字符串
示例:
8. 大小写转换
| 函数 | 描述 |
| upper () | 将小写字母转换为大写字母 |
| lower( ) | 将大写字母转换为小写字母 |
| title( ) | 所以单词都是以大写开始。其余字母皆为小写 |
| capitalize( ) | 将字符串的第一个字符转换为大写 |
| swapcase( ) | 将字符串中大写的转换为小写,小写的转换为大写 |
示例:
poetry = "I saw the most beautiful thing ever one morning." large = poetry.upper() print(large) small = poetry.lower() print(small) start = poetry.title() print(start) starts = poetry.capitalize() print(starts) Invert = poetry.swapcase() print(Invert) >>> I SAW THE MOST BEAUTIFUL THING EVER ONE MORNING. >>> i saw the most beautiful thing ever one morning. >>> I Saw The Most Beautiful Thing Ever One Morning. >>> I saw the most beautiful thing ever one morning. >>> i SAW THE MOST BEAUTIFUL THING EVER ONE MORNING.
9. 检索
| 函数 | 描述 |
| count( ) | 统计字符串里指定子字符出现的次数 |
| find( ) | 查找某字符串里是否包含被查询的子字符串 |
| index( ) | 查找某字符串里是否包含被查询的子字符串 |
| startswith( ) | 查询字符串是否以指定子字符开头 |
| endswith( ) | 查询字符串是否以指定子字符结尾 |
1. count( ) 函数
描述:统计字符串中指定字符出现的次数
语法:
str.count("被检索的字符串", "检索的起始位置", "检索的结束位置")
注意:起始位置和结束位置可以省略不写,默认为第一个字符到最后一个字符,第一个索引值 为 0。
示例:
poetry = "I saw the most beautiful thing ever one morning."
# 注意:python 是区分大小写的
# 如果没有找到字符串,则返回 0
retrieve = poetry.count('e')
print(retrieve)
>>> 5
2. find( ) 函数
描述:查找某字符串里是否包含被查询的子字符串
语法:
str.find("被检索的字符串", "检索的起始位置", "检索的结束位置")
注意:如果找到被查询的字符串,则返回该字符串的索引,否则返回 -1,表示没有找到该字符串。
示例:
poetry = "I saw the most beautiful thing ever one morning."
retrieve = poetry.find('m')
print(retrieve)
>>> 10
3. index( ) 函数
描述:查找某字符串里是否包含被查询的子字符串
语法:
str.index("被检索的字符串", "检索的起始位置", "检索的结束位置")
注意:如果找到被查询的字符串,则返回该字符串的索引,否则抛出异常。
示例:
poetry = "I saw the most beautiful thing ever one morning."
retrieve = poetry.index('ms')
print(retrieve)
>>> retrieve = poetry.index('ms')
ValueError: substring not found
4. startswith( ) 函数
描述:查询字符串是否以指定子字符开头。
语法:
str.startswith("被检索的字符串", "检索的起始位置", "检索的结束位置")
注意:如果找到了返回 true,否则返回 false
示例:
poetry = "I saw the most beautiful thing ever one morning."
retrieve = poetry.startswith('i')
print(retrieve)
>>> False
5. endswith( ) 函数
描述:查询字符串是否以指定子字符开头。
语法:
str.endswith("被检索的字符串", "检索的起始位置", "检索的结束位置")
注意:如果找到了返回 true,否则返回 false
示例:
poetry = "I saw the most beautiful thing ever one morning."
retrieve = poetry.endswith('.')
print(retrieve)
>>> True
9. 字符串的分割方法
| 函数 | 描述 |
| split( ) | 通过指定分割符对字符串进行切片,拆分字符串 |
| splitlines( ) | 通过指定分割符对字符串进行切片,拆分字符串 |
| partition( ) | 从 str 出现的第一个位置起 把字符串 string 分成一个 3 元素的元组 |
1. split( ) 函数
描述:通过指定分割符对字符串进行切片,拆分字符串
语法:
str.split("分割符",分割次数)
注意:如果不指定分割符,默认分割 空白字符 n t r 等等,不设置分割次数的情况下为全部分割。
示例:
text = 'hello wrold' print(text.split()) >>> ['hello','wrold']
2. splitlines( ) 函数
描述:通过指定分割符对字符串进行切片,拆分字符串
语法:
str.splitlines("分割符",分割次数)
注意:如果不指定分割符,默认分割行界符 n r ...,不设置分割次数的情况下为全部分割。
示例:
text = 'hello wrold' print(text.splitlines()) >>> ['hello wrold']
3. partition( ) 函数
描述:从 str 出现的第一个位置起 把字符串 string 分成一个 3 元素的元组。
语法:
str.partition("分割符",分割次数)
示例:
text = 'hellowrold'
print(text.partition('o'))
>>> ('hell', 'o', 'wrold')
10. 字符串的修剪
| 函数 | 描述 |
| strip( ) | 移除字符串头尾指定的字符(默认为空白符或换行符)或字符序列 |
| lstrip( ) | 移除字符串左侧指定字符(默认为空白符或换行符)或字符序列 |
| rstrip( ) | 移除字符串右侧指定字符(默认为空白符或换行符)或字符序列 |
1. strip( ) 函数
描述:移除字符串头尾指定的字符,默认为空白,换行符
语法:
str.strip([chars])
chars:移除字符串头尾指定的字符序列
注意:该方法只能删除头尾的字符,不能删除中间部分的字符。
示例:
text = ' hello world '
print(text.strip())
>>> hello world
text = ' hello world '
print(text.strip(' hello'))
>>> world
11. 格式化字符串
格式化字符串( 英语:format string ),是一些程序设计语言在格式化输出函数中用于指定输出参数的格式与相对位子的字符串参数,例如C,C++等程序设计语言的printf类函数,其中的转换说明(conversion specification)用于把随后对应的 0 个或多个函数参数转换为相应的格式输出;格式化字符串中转换说明以外的其它字符原样输出。
因为太多了,这方面的内容我直接发文档



