由一系列字符组成的不可变序列容器,存储的是字符的编码值。
1. 一对单引号字符串:
'hello world'
2. 一对双引号:
"hello world"
3. 三引号字符串:
'''
hello python,
hello my world!
'''
1.当字符串中有单引号时,要用双引号定义该字符串
例如:"she's a beautiful girl"
2.当字符串中有双引号时,要用单引号定义该字符串
例如:'I will have "nice" holidays'
3.当字符串中既有单引号又有双引号时,要用三引号定义该字符串
例如:'''
It's the "best" way to go to school
'''
注意:当三引号不用于定义字符串时,三引号可以起到多行注释的作用。
索引即下标,也称之为编号。
可以通过编号(索引、下标)快速找到序列类型数据指定位置的元素。
注意:从左侧数下标从0开始; 从右侧数下标为-1.
变量名 = 容器名[索引值]
字符串切片的定义切片是指对 *** 作的对象截取其中一部分的 *** 作。
字符串、列表、元组(后面会学)都支持切片 *** 作。
序列[开始位置下标:结束位置下标:步长] 注意事项: 1.不包含结束位置下标对应的数据,正负整数均可; 2.步长是选取间隔,正负整数均可,默认步长为1. 3.[:m]的含义:从字符串起点(下标为0)开始,到下标为m(不包括m)的位置结束 4.[n:]的含义:从下标为n(包括n)的位置开始,到字符串结束位置结束 5.[:]的含义:从字符串的开始到字符串结束( *** 作整个字符串)字符串的常见 *** 作方法
查询类方法
1.index方法:
作用:查找字符串中第一次出现的子字符串的位置,可以规定字符串的索引查找范围(start,end),若无则会报错。
语法:str.index(sub,start,end) -> int 返回整型
参数:
sub -- 查找的子字符串
start -- 索引的起始位置,默认为0
end -- 索引的结束位置,默认为字符串的长度
2.count方法:
作用:统计字符串里某个字符出现的次数。
可以选择字符串索引的起始位置和结束位置。
语法:my_str.count(str,start=0,end=len(mystr))
参数:
str -- 为要统计的字符(可以是单字符,也可以是多字符)
start -- 为索引字符串的起始位置,默认参数为0
end -- 为索引字符串的结束位置,默认参数为字符串长度即len(str)
3.find方法:
作用:找字符串中指定的子字符串sub第一次出现的位置,可以规定字符串的索引查找范围。
若无则返回-1。
语法:str.find(sub,start,end) -> int 返回整型
参数:
sub -- 要索引的子字符串
start -- 索引的起始位置。
默认值为0
end -- 索引的结束位置。
默认值为字符串长度len(str)。
不包括end。
知识扩展:
rfind方法:查找字符串中指定的字符串sub最后一次出现的位置,可以规定字符串的索引查找范围。
若无则返回-1。
*** 作类方法
1.replace方法:
作用:把mystr中的str1替换成str2,如果count指定,则替换不超过count次。
语法:my_str.replace(str1,str2, mystr.count(str1))
2.split方法:
作用:拆分字符串,通过指定分隔符sep对字符串进行分割,并返回分割后的字符串列表。
语法:str.split(str=" ",num=string.count(str))
参数:
str -- 分隔符,默认为所有的空字符,包括空格、换行(\n)、制表符(\t)等
num -- 分割次数,默认为-1,即分割所有
3.strip方法:
作用:该函数的作⽤是去除字符串开头和结尾处指定的字符,不会去除字符串中间对应的字符。
语法:str.strip(chars)
参数:
chars -- 要去除的字符 默认为空格或换行符。
知识扩展:
lstrip方法:⽤于截掉字符串左边的空格或指定字符
rstrip方法:删除 str 字符串末尾的指定字符(默认为空格)
4.join方法:
作用:将可迭代对象的元素用指定的字符连接起来
语法:'@'.join(['a','b','c'])
结果为:'a@b@c'
调整类方法
1.capitalize方法:
作用:将字符串的第一个字母变成大写,其余字母变为小写
语法:str.capitalize()
2.title方法:
作用:所有英文单词首字母大写,其余英文字母小写
语法:str.title()
3.lower方法:
作用:将字符串的所有大写字母转换为小写字母
语法:str.lower()
4.upper方法:
作用:将字符串中的所有小写字母转换成大写字母
语法:str.upper()
5.center方法:
作用:返回一个长度为width,两边用fillchar(空字符)填充的字符串,即字符串str居中,两边用fillchar填充。
若字符串的长度大于width,则直接返回字符串str。
语法:str.center(width , "fillchar")
参数:
width -- 指定字符串长度
fillchar -- 要填充的单字符,默认为空格
6.ljust方法:
作用:返回一个原字符串左对齐,并使用fillchar填充(默认为空格)至指定长度的新字符串。
如果指定的长度小于原字符串的长度则返回原字符串。
语法:str.ljust(width , fillchar) -> str 返回一个新的字符串
参数:
width -- 指定字符串的输出长度
fillchar -- 将要填充的单字符,默认为空格
7.rjust方法:
作用:返回一个原字符串右对齐,并使用fillchar填充(默认为空格)至指定长度的新字符串。
如果指定的长度小于原字符串的长度则返回原字符串。
语法:str.rjust(width , fillchar)
参数:
width -- 指定字符串的输出长度
fillchar -- 将要填充的单字符,默认为空格
判别类方法
1.endswith方法:
作用:判断字符串是否以指定字符或字符串结尾
语法:str.endswith("suffix",start,end) 或 str[start,end].endswith("suffix")
参数:
suffix -- 后缀,可以是单个字符,也可以是字符串,还可以是元组("suffix"中的引号要省略,常用于判断文件类型)
start -- 索引字符串的起始位置
end -- 索引字符串的结束位置
2.startswith方法:
作用:判断字符串是否以指定字符或子字符串开头
语法:str.endswith("suffix",start,end) 或
str[start,end].endswith("suffix")
用于判断字符串某段字符串是否以指定字符或子字符串结尾。
-> bool 返回值为布尔类型
参数:
suffix -- 后缀,可以是单个字符,也可以是字符串,还可以是元组("suffix"中的引号要省略)
start -- 索引字符串的起始位置
end -- 索引字符串的结束位置
3.isalnum方法:
作用:判断字符串是否由字母和数字组成。
str中至少有一个字符且所有字符都是字母或数字则返回True,否则返回False。
语法:str.isalnum() -> bool 返回值为布尔类型(True,False)
4.isalpha方法:
作用:判断字符串是否只由字母组成。
字符串中至少有一个字符且所有字符都是字母则返回True,否则返回False。
语法:str.isalpha() -> bool 返回值为布尔类型(True,False)
5.isdigit方法:
作用:判断字符串是否只由数字组成。
字符串中至少有一个字符且所有字符都是数字则返回True,否则返回False。
语法:str.isdigit() -> bool 返回值为布尔类型(True,False)
6.islower方法:
作用:判断字符串中的字⺟是否全由⼩写字⺟组成。
(字符串中可包含⾮字⺟字符)字符串中包含⾄少⼀个区分⼤⼩写的字符,且所有这些区分⼤⼩写的字符都是⼩写,则返回True,否则返回 False。
语法:str.islower() -> bool 返回值为布尔类型(True,False)
7.isupper方法:
作用:判断字符串中的字⺟是否全由⼤写字⺟组成。
(字符串中可包含⾮字⺟字符)。
字符串中包含⾄少⼀个区分⼤⼩写的字符,且所有这些区分⼤⼩写的字符都是⼤写,则返回True,否则返回 False。
语法:str.isupper() -> bool 返回值为布尔类型(True,False)
8.isspace方法:
作用:判断字符串是否只由空格组成。
若字符串中只包含空格,则返回 True,否则返回False。
语法:str.isspace() -> bool 返回值为布尔类型(True,False)
9.istitle方法:
作用:检测判断字符串中所有单词的⾸字⺟是否为⼤写,且其它字⺟是否为⼩写,字符串中可以存在其它⾮字⺟的字符。
若字符串中所有单词的⾸字⺟为⼤写,且其它字⺟为⼩写,则返回 True,否则返回 False。
语法:str.istitle() -> bool 返回值为布尔类型(True,False)
1.原样输出"\"
实例: 'skhfksdf\\nsjfslj'
2.原样输出单引号和双引号
'skjf\'skjdf'
"ksjfsj\"sjdfksjd"
3.原样输出%
"要格式化的: %s, 原样输出的%%s" % '顶上来'
4.\r, \t, \n等转移字符的含义
\r:回车符
\t:横向制表符
\n:换行符
1. "+"运算:将字符串str1与str2进行拼接
实例:
str1 = 'a'
str2 = 'b'
print(str1 + str2) # 结果为: 'ab'
2. "*"运算:str1*n, 将字符串str1内的元素复制n次, 形成一个字符串
str1 = 'abc'
print(str1*3) # 结果为: 'abcabcabc'
3. in 与 not in的区别
in:字符 in str, 含义为如果字符在字符串str中,结果则为True,反之,则为False。
not in:字符 not in str, 含义为如果字符不在字符串str中,结果则为True,反之,结果则为False。
列表的定义方式
1.直接法:直接定义列表并赋值
2.构造方法:lst = list(可迭代对象)
3.推导式方法:利用for循环,循环向列表存入数据
列表的索引取值和切片取值
1.列表索引取值:变量名 = 容器名[索引值]
2.列表切片取值:列表[开始位置下标:结束位置下标:步长]
列表的增加方法
1.append方法:在列表的结尾追加数据
2.extend方法:列表结尾追加数据,如果数据是⼀个序列,则将这个序列的数据逐⼀添加到列表
3.insert方法:列表序列.insert(位置下标, 数据)
列表删除的方法
1.del方法:删除列表中的指定数据
2.pop方法:删除指定下标的数据(默认为最后⼀个),并返回该数据
3.remove方法:移除列表中某个数据的第⼀个匹配项
4.clear方法:清空列表, 但列表容器还在, 只是其中的元素被清空了
列表修改的方法
1.修改: 列表[索引值] = "新的元素内容"
2.reverse方法:将列表中的数据进行逆置
3.sort方法:对列表中的数据进行排序, 会直接修改原数据
列表查找的方法
1.index方法:返回指定数据所在位置的下标
2.count方法:统计指定数据在当前列表中出现的次数
3.len方法:访问列表⻓度,即列表中数据的个数
循环遍历
1.利用while循环配合len函数实现遍历列表
语法格式:
i = 0
while i < len(列表):
代码块
i += 1
2.利用for循环实现循环遍历列表
语法格式:
for 变量名 in 列表:
代码块
列表涉及的运算
1. "+"运算:拼接列表
2. "*"运算:复制元素
3. in 与 not in: 成员判断
列表嵌套的语法格式
1.列表嵌套的形式
列表名 = [ '数据1','数据2', ['数据4', '数据5','数据6'], '数据3']
2.列表嵌套取值列表嵌套取值需要先定位到这个值所在的列表,然后在从这个列表中根据索引进行取值
3.注意:列表嵌套取值要耐心的逐级分析, 原理就是根据索引取值
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)