2020/07/27
Python_02列表、元组、字符串笔记
- 列表
- 元组
- 字符串
- 9、字符串
- 10、字符串的方法
- ⑴capitalize()方法
- ⑵casefold()方法
- ⑶center(width)方法
- ⑷count(sub[,start[,end]])方法
- ⑸encode(encoding='utf-8',errors='start')方法
- ⑹endswith(sub[,start[,end]])方法
- ⑺expandtabs([tabsize=8])方法
- ⑻find(sub[,start[,end]])
- ⑼index(sub[,start[,end]])
- ⑽isalnum()
- (11)isalpha()
- (12)isdecimal()
- (13)isdigit()
- (14)islower()
- (15)isnumeric()
- (16)isspace()
- (17)istitle()
- (18)isupper()
- (19)join(sub)
- (20)Ijust(width)
- (21)lower()
- (22)Istrip()
- (23)partition(sub)
- (24)replace(old,new[,count])
- (25)rfind(sub[,start[,end]])
- (26)rfindex(sub[,start[,end]])
- (27)rjust(width)
- (28)rpartition(sub)
- (29)rstrip()
- (30)split(sep=None,maxsplit=-1)
- (31)splitlines(([keepends]))
- (32)startswith(prefix[,start,end]])
- (33)strip([chars])
- (34)swapcase()
- (35)title()
- (36)translate(table)
- (37)upper()
- (38)zfill(width)
- 11、字符串的格式化
列表
1、列表类型
整数、浮点数、字符串、对象
㈠创建一个普通的列表
number = [1,2,3,4,5]
打印输出结果:
[1,2,3,4,5]
㈡创建一个混合列表
mix = [1,3.14,'笔记',[1,2,3]]
打印输出结果:
[1,3.14,'笔记',[1,2,3]]
㈢创建一个空列表
empty = []
打印输出结果:
[]
2、向列表中插入元素
⑴append()方法
(参数是元素,自动追加到末尾)
用法:
number.append('加进列表的元素')
⑵extend()方法
(参数是列表,是用一个列表扩展另外一个列表的,自动追加到末尾)
用法:
number.extend([元素1,元素2])
⑶insert()方法
(插入的位置可以任意选择,两个参数,第一个参数是插入下标,第二个参数是待插入的元素)
用法:
number.insert(1,'此元素插到第二个位置因下标从零开始')
3、从列表中获取元素
number[0] = '111'
4、从列表删除元素
⑴remove()方法
(需要知道列表中用这个元素,不需要知道元素所在的位置)
用法:
number.remove('要删除的元素')
注意:remove方法中
1.如果指定的元素不存在,那么程序就会报错。
2.如果列表中存在多个匹配的元素,那么它只会删除第一个。
⑵del 语句
用法:
del number[1] (删除列表中一个元素)
del number (删除整个列表)
⑶pop()方法
用法:
number.pop()(无参数时,默认删除最后一个元素;有参数时,参数为待删除元素的下标)
注意:pop()方法会返回删除元素的值,所以可以将值赋值给变量 name = number.pop(2)
5、列表分片
(可实现一次性获取需要的多个元素)
举例:
⑴number[1:3]
说明:第一个索引值是开始的位置,第二个索引值是结束的位置,但步包含最后一个元素
因number = [1,2,3,4,5] 所以number[1:3]的结果为
输出结果:
[2,3]
⑵number[:3]
输出结果:
[1,2,3]
说明:从第一个位置开始到索引值位置结束,不包括第二个索引位置的元素值
⑶number[1:]
输出结果:
[2,3,4,5]
说明:从索引位置的元素值开始到列表最后结束
⑷number[:]
输出结果:
[1,2,3,4,5]
说明:拷贝列表
6、列表的一些常用操作符
⑴比较操作符
(>…)
说明:列表有多个元素时,默认从第零个元素开始比较(同字符串的比较)
⑵逻辑操作符
(and…)
⑶连接操作符
(+)
说明:+两侧类型必须一致,两边都是列表才可实现列表的拼接;若向列表添加元素可用2中的方法
⑷重复操作符
(*…)
⑸成员关系操作符
(in、not in)
说明:不可判断元素是否在列表里的列表中,同break\continue影响一层
访问列表里的列表
类似于C语言中的二维数组
mix[3][1] 结果为1
7、列表类型的内置函数
⑴count()
用法:
列表名.count(参数1)
说明:
计算参数1在列表中出现的次数
⑵index()
用法1:
列表名.index(参数1)
说明:
返回参数1在列表中的位置
用法2:
列表名.index(参数1,下标1,下标2)
说明:
返回从下标1到下标2范围内参数1在列表中的位置
⑶reverse()
用法:
列表名.reverse()
说明:
无参数,实现列表翻转(最后一个元素成为第一个元素,倒数第二个元素成为第二个元素)
⑷sort()
用法:
列表名.sort()
说明:
无参数,实现列表排序,从小到大
sort(func,key,reverse)
参数func,参数key是默认的归并排序,reverse默认值为False;
若列表名.sort(reverse=True)则可实现列表从大到小排序
元组
8、元组特点
类似列表,但列表可修改,元组不可任意修改
⑴创建和访问一个元组
(其他和列表几乎一样)
创建列表是[],创建元组大部分是(),一定要有逗号,有逗号,说明创建的是元组
例:
创建空元组temp = ()
创建有一个元素的元组temp1 = (1,)或temp1 = 1,
注意区别:
8 * (8)
结果64
8 * (8,)
结果(8,8,8,8,8,8,8,8)
⑵更新和删除一个元组
更新可以利用切片,具体如下图,将temp切片拼接后重新赋值
用法 :
del 元组名
作用:
可删除整个元组(一般很少用,因为长时间没有表情指向会自动回收)
⑶元组相关的操作符
(同列表)
拼接操作符
重复操作符
关系操作符
逻辑操作符
成员操作符
字符串
9、字符串
(同元组,一旦定义不容易被修改)
切片、操作符同元组列表
10、字符串的方法
⑴capitalize()方法
把字符串的第一个字符改为大写
⑵casefold()方法
把整个字符串的所有字符改为小写
⑶center(width)方法
将字符串居中,并使用空格填充至长度width的新字符
⑷count(sub[,start[,end]])方法
返回sub在字符串里边出现的次数,start和end参数表示范围,可选
⑸encode(encoding=‘utf-8’,errors=‘start’)方法
以encoding指定的编码格式对字符串进行编码
⑹endswith(sub[,start[,end]])方法
检查字符串是否以sub子字符串结束,如果是返回True,否则返回False。start和end参数表示范围,可选
⑺expandtabs([tabsize=8])方法
把字符串中的(\t)转换为空格,如不指定参数,默认的空格数是tabsize=8
⑻find(sub[,start[,end]])
检测sub是否包含在字符串中,如果有则返回索引值,否则返回-1,start和end参数表示范围,可选。
⑼index(sub[,start[,end]])
跟find方法一样,不过如果sub不在string中会产生一个异常
⑽isalnum()
如果字符串至少有一个字符并且所有字符都是字母或数字则返回True,否则返回False
(11)isalpha()
如果字符串至少有一个字符并且所有字符都是字母则返回True,否则返回False
(12)isdecimal()
如果字符串至包含十进制数字则返回True,否则返回False
(13)isdigit()
如果字符串只包含数字则返回True,否则返回False
(14)islower()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是小写,则返回True,否则返回False
(15)isnumeric()
如果字符串中只包含数字字符,则返回True,否则返回False
(16)isspace()
如果字符串中包含空格,则返回True,否则返回False
(17)istitle()
如果字符串是标题化(所有的单词都是以大写开始,其余字母均小写),则返回True,否则返回False
(18)isupper()
如果字符串中至少包含一个区分大小写的字符,并且这些字符都是大写,则返回True,否则返回False
(19)join(sub)
以字符串作为分隔符,插入到sub中所有的字符之间
(20)Ijust(width)
返回一个左对齐的字符串,并使用空格填充至长度为width的新字符串
(21)lower()
转换字符串中所有大写字符为小写
(22)Istrip()
去掉字符串左边的所有空格
(23)partition(sub)
找到子字符串sub,把字符串分成一个3元组(pre_sub,sub,fol_sub),如果字符串中不包含sub则返回(‘元字符串’,’ ‘,’ ')
(24)replace(old,new[,count])
把字符串中的old子字符串替换成new子字符串,如果count指定,则替换不超过count次
(25)rfind(sub[,start[,end]])
类似于find()方法,不过是从右边开始查找。
(26)rfindex(sub[,start[,end]])
类似于index()方法,不过是从右边开始
(27)rjust(width)
返回一个右对齐的字符串,并使用空格填充至长度为width的新字符串
(28)rpartition(sub)
类似于partition()方法,不过是从右边开始查找
(29)rstrip()
删除字符串末尾的空格
(30)split(sep=None,maxsplit=-1)
不带参数默认是以空格为分隔符切片字符串,如果maxsplit参数右设置,则仅分割maxsplit个子字符串,返回切片后的子字符串拼接的列表
(31)splitlines(([keepends]))
按照’\n’分隔,返回一个包含各行作为元素的列表,如果keepends参数指定,则返回前keepends行
(32)startswith(prefix[,start,end]])
检查字符串是否以prefix开头,是则返回True,否则返回False.start和end参数可以指定范围检查,可选。
(33)strip([chars])
删除字符串前边和后边所有的空格,chars参数可以定制删除的字符,可选
(34)swapcase()
翻转字符串中的大小写
(35)title()
返回标题化(所有的单词都是以大写开始,其余字母均小写)的字符串
(36)translate(table)
根据table的规则(可以由str.maketrans(‘a’,‘b’)定制)转换字符串中的字符
(37)upper()
转换字符串中的所有小写字符为大写
(38)zfill(width)
返回长度为width的字符串,元字符串右对齐,前边用0填充。
11、字符串的格式化
㈠format方法
(接受关键字参数和未知参数;两者的转换用replacement字段,replacement字段在字符串中用{}表示)
⑴关键字参数
⑵未知参数
⑶关键字参数和未知参数
(未知参数必须在关键字参数之前换言之就是数字必须在字母之前)
⑷转义字符打印{}
(0:后的为打印格式,同C)
㈡格式化操作符
⑴%c
格式化字符及其ASCII码
⑵%s
格式化字符串
⑶%d
格式化整数
⑷%o
格式化无符号八进制数
⑸%x
格式化无符号十六进制数
⑹%X
格式化无符号十六进制数(大写)
⑺%f
格式化定点数,可指定小数点后的精度
⑻%e
用科学记数法格式化定点数
⑼%E
作用同%e,用科学记数法格式化定点数
⑽%g
根据值的大小决定使用%f或%e
(11)%G
作用同%g,根据值的大小决定使用%f或%e
㈢格式化操作符辅助指令
⑴m.n
m是显示的最小总宽度, n 是小数点后的位数
⑵-
用于左对齐
⑶+
在正数前面显示加号(+)
⑷#
在八进制数前面显示零(‘0’),在十六进制数前面显示‘0x’或‘0X’
⑸0
显示的数字前面填充‘0’ 取代空格
㈣字符串转义字符含义
⑴\’
单引号
⑵\"
双引号
⑶\a
发出系统响铃声
⑷\b
退格符
⑸\n
换行符
⑹\t
横向制表符( TAB )
⑺\v
纵向制表符
⑻\r
回车符
⑼\f
换页符
⑽\o
八进制数代表的字符
(11)\x
十六进制数代表的字符
(12)\0
表示一个空字符
(13)\\
反斜杠