Task04:列表7.28)
理论部分
1. 掌握列表的定义与创建
2. 熟练添加、删除和获取列表中的元素
3. 了解列表的常用操作符及其他方法
练习部分
1. 列表操作练习
2. 课后思考题
3. leetcode练习题
简单数据类型:int、float、bool
容器数据类型:list、dict、tuple、set、str
1、定义列表
|
有序集合 |
|
没有大小 |
|
能够保存任意数量、任意类型的Python对象 |
|
[元素1,……,元素n] |
2、创建列表
|
创建普通列表 |
x = [1,2,3] |
|
用range()创建 |
x = list(rang(1,11,2)) *起始值,包含;终止值,不包含;步长 |
|
用推导式创建 |
x = [i for i in range(5)] x = [0 for i in range(5)] |
|
创建多维列表 |
看括号最外层,做外层有几层括号就为几维列表 |
|
创建混合列表 |
|
|
创建空列表 |
x = [] |
3、向列表添加元素
|
list.append(obj) |
在列表末尾追加新元素 |
括号内只有一个元素 |
|
参数可为任意类型 |
||
|
参数保留原来的数据类型 |
||
|
list.extend(seq) |
在列表末尾,一次性追加另一个序列的所有值 |
用新的列表扩展另一个列表 |
|
相当于“+” |
||
|
list.insert(index,obj) |
在index位置前插入obj |
|
4、删除列表元素
|
list.remove(obj) |
删除列表中第一次出现的obj |
指定元素 |
|
list.pop([index=-1]) |
删除列表中的某个元素,默认最后一个,返回删除对象 |
指定位置 |
|
删除后使用元素 |
||
|
del var[,var2,……] |
删除列表中一个或多个元素 |
del x[0:2] 删除0,1元素 |
|
删除后不使用元素 |
5、获取列表中的元素
|
索引 |
获取单个元素 |
从前往后,自0始 |
|
从后往前,自-1始 |
||
|
切片 start:stop:step |
“start:” |
从start开始,到尾部 |
|
":stop" |
从0开始,到stop为止,不包括stop |
|
|
"start:stop" |
从start开始,到stop为止,不包括stop |
|
|
step = -1相当于反向排列列表 |
||
|
":" |
复制列表 |
- 列表的复制
list2 = list1 list1变则list2变
list3 = list1[:] list1为一维,list1变list3不变;list1为二维,list1变list3变 (why)
6、列表常用操作符
|
== |
|
|
+ |
连接 |
|
* |
重复 |
|
in\not in |
成员关系操作符 |
7、列表的其他方法
|
list.reverse() |
列表反向排列,相当于list[::-1] |
|
list.index(x[,start[,end]]) |
找出列表中第一个与x匹配元素的索引 |
|
list.count(obj) |
统计列表中obj的个数 |
|
list.sort(key=None,reverse=False) |
排序 |
|
key为比较对象 |
|
|
reverse=False升序;reverse=True降序 |
练习题
Task05:元组(7.28)
理论部分
1. 掌握元组定义,熟悉创建和访问元组
2. 熟悉更新和删除元组
3. 了解元组相关的操作符和内置方法,以及解压元组
练习部分
1. 课后思考题
2. 知识扩展
1、元组定义
|
定义 |
(元素1,……,元素n) (元素1,) |
|
创建 |
与列表同,但元素创建之后不能修改 |
|
创建二维元组: t1 = (1,2,3),(1,2,3) |
|
|
获取元组元素 |
切片 & 索引 |
2、更新和删除元素
- 添加
- 更改
3、相关操作符
|
比较操作符 |
|
逻辑操作符 |
|
连接操作符 |
|
重复操作符 |
|
成员关系操作符 |
4、内置方法
|
tuple.index(x[,start[,end]]) |
找出列表中第一个与x匹配元素的索引 |
|
tuple.count(obj) |
统计列表中obj的个数 |
5、解压元组
|
一维 |
元组有几个元素,左边就几个变量 |
|
二维 |
按照元组结构定义左边变量 |
|
只获取某些元素 |
在意数值:*rest |
|
不在意数值:*— |
- 二维这样也OK