show | version | enable_checker |
---|---|---|
step |
1.0 |
true |
- 上次了解了 list 列表的操作
- 追加列表项 append
- 在列表的结尾处追加元素
- append函数后面
- 这个clear函数怎么用呢??🤔
- clear 是清空所有列表中的项目
- clear 也是
- 成员方法
- 不能直接调用
- 前面要有l.
- 这个.(点)是什么意思来着?
- 先去查看帮助
- 然后向后翻
- 这两个成员(append和clear)
- 都是list这个列表类的成员方法
- member method
- 都是list这个列表类的成员方法
- 通过 实例对象 来调用
- append
- name_list.append("o4z")
- clear
- name_list.clear()
- append
- .(点)的意思是
里面的
- append 和 clear 都是 成员方法
- 都有self 作为第一个参数
- clear怎么用呢?
- l调用clear方法的结果
- 就是将l清空
- 谁调用clear方法
- 就将谁清空
- 具体谁调用呢?
-
l 是
- list列表类的
- 实例对象
- Instance Object
- list列表类的
-
罐子类
- 是一个抽象的类型
- 上面有
- 三个罐子类的
- 实例对象instance object
-
clear 是
- l 这个list列表类的
- 成员方法
- l 这个list列表类的
-
下面的罐子
- 是罐子类的一个实例对象
- instant object
- 可以支持清空方法
- .clear()
- 是罐子类的一个实例对象
- 什么 是 类 来着?
- 具体的汽车
- 是隶属于汽车类(car class)的
- 一个实例对象 汽车乙
- 是隶属于汽车类(car class)的
- 汽车乙 可以调用自己的成员方法
- 汽车乙.开门()
- 汽车乙.加速()
- 汽车乙.倒车()
- 汽车乙.clear()
- 可以直接查看clear的帮助吗?
help(list.clear)
- 可以查到
-
clear方法的作用就是
- 清空列表
-
l.clear()和 l = [ ]
- 有区别吗?
- 首先定义 l1、l2是两个列表对象
- 列表对象l1调用clear函数之后
- l1、l2都清空了
- 还是这两个列表对象
- 将空列表[ ] 赋给 l2
- l1 不会受到影响
- 这应该如何理解呢?
l1 = [1, 2, 3]
l2 = l1
l2.clear()
print(l1, l2)
- 将l1赋给l2
- 两个列表对象指向同一地址
- l2 指向l1的地址
- l2 清空就是l1清空
- 这两个列表对象
- 地址始终没有变化
- 一直指向同一个位置
- 所以清空一个
- 另一个所指向的地址不变
- 也清空了
- 另一个所指向的地址不变
l1 = [1, 2, 3]
l2 = l1
l2 = []
print(l1, l2)
- 将l1赋给l2
- 两个列表对象指向同一地址
- 将空列表[]赋给l2
- l2 地址转变
- l1 地址没变
- 通过id函数得到列表的地址
-
将空列表赋给l2
- 让l2指向一个空列表的地址
- 是一个新地址
-
空列表地址相等吗?
- 我建立了两个空列表
- 他们虽然都是空列表
- 但是是指向不同地址空间的两个空列表
- 如果我想让两个列表控件指向同一个地址呢?
- a = b = [ ]这就话相当于两句话
- b = [ ]
- a = b
- 当再次给a进行赋值的时候
- a指向了一个新的地址
- b还指向原来的地址
- 这次了解了 list 列表的操作
- 清空列表 clear
- clear可以把整个列表清空
- 就像清空回收站里面的删除文件列表一样
- clear
- 前面要有l.
- 这个.(点)的意思是 里面的
- 可以不清空吗?
- 想要定点删除可以吗?🤔
- 下次再说 👋