Day7-课堂总结
1.列表赋值
a.直接使用一个列表变量给另一个列表变量赋值,赋的是地址,赋完值之后,对其中一个列表
进行增删改,会影响另一个列表
list1 = [1,2,3]
list2 = list1
list2.append(100)
print(list1) #[1, 2, 3, 100]
list1 = [1,2,3]
list2 = list1[:]
list2.append(100)
print(list1) #[1, 2, 3]
b.如果赋值的时候赋的列表的切片或者拷贝,会产生新的地址,然后使用新的地址赋值
赋完值之后,两个列表相互之间不影响
列表中的方法
1.列表.count(元素) - 获取指定元素在列表中出现的次数
2.列表1.extend(序列) - 将序列中所有的元素都添加到列表1中
3.列表.index(元素) - 获取指定元素的下标
注意:a.如果元素有多个,只取第一个下标
b.如果这个元素不存在,会报错(valueError)
4.列表.reverse() - 反向列表(将列表元素倒序)
5.列表.sort() - 对列表进行升序排序(从小到大)
列表.sort(reverse=True) - 对列表进行降序(从大到小)
注意:a.列表的要求:列表的元素类型必须一样,元素支持比较运算符
6.列表.clear() - 清空列表
注意:清空列表尽量使用clear()
7.列表.copy() - 将列表中的元素直接赋值一份产生一个新的列表。和列表[:]效果一样
这里的拷贝是浅拷贝
import copy
copy.copy(对象) - 浅拷贝(直接拷贝元素的值产生一个新的地址)
copy.deepcopy(对象) - 深拷贝(不会直接复制地址,
而是将地址对应的值拷贝一份,产生新的地址)
1.什么是元组(tuple)
元组就是不可变的列表。(有序,不可变)
有序 - 可以通过下标获取元素
不可变 - 不支持增删改
2.元组的字面量:通过小括号将多个元素括起来,多个元素之间用逗号隔开
a.只有一个元素的元组:元素后面需要加一个逗号 tuple1 = (1,)
b.直接将多个数据用逗号隔开,不用括号括起来,还是一个元组值tuple3 = 1, 2, 'dfs'
c.可以通过变量个数和元组个数保持一致来获取元组中的每个元素
x, y, z = tuple3
print(x, y, z)
通过在变量名前加,获取没有的变量获取到的元素的剩下的部分,
以列表的形式返回
tuple5 = ('周海龙', 99, 20, 30, 50)
name, *score = tuple5
print(name, score) #周海龙 [99, 20, 30, 50]
*name, score = tuple5
3.获取元组元素和获取列表元素一模一样
4.相关运算
+,*,in/not in, len(), tuple(), max(), min()
5.元组相关的方法:只有列表中的count和index
1.什么是字典(dict)
字典是python中内置的容器类的数据类型,可变,无序的。字典的元素
是键值对
2.字典的字面量: 使用大括号括起来,大括号中是键值对,
多个键值对之间用逗号隔开
键值对 ->键:值
键(key) - a.不可变的数据才能作为键,唯一的,列表不行(列表是可变的) 一般使用字符串作为键
值(value) - 任何类型的数据都可以作为值
什么时候使用字典
如果一个容器里面存储的数据是不同意义的数据(数据之间需要区分),就使用字典
1.查(获取字典的值)
a.获取单个值
字典[key] - 获取字典中key对应的值(注意:如果key不存在,会报错keyError)
字典.get(key) - 获取字典中key对应的值(如果key不存在,不会报错,并且返回一个默认值none)
None是python中的关键字,表示一个特殊值,(没有,空的意思)
b.遍历
2.增(添加键值对)
字典[key] = 值 - 当key不存的时候,就是在字典中添加键值对
dict.update() 字典1.update(序列) - 将序列中的元素转换成键值对,
然后在添加到字典1中,当key值有重名的时候,会用序列中键值对对应的值
,更新原字典的key对应的值
注意:在这儿的序列要求是能
3.改(修改key对应的值)
字典[key] = 值 -当key存在的时候,就是修改key对应的值
4.删(删除键值对)
del 字典[key] - 删除字典中key对应的键值对
b. 字典.pop(key) 取出字典中key对应的值(删除整个键值对)
字典.popitem() 删除最后一个键值对(取出最后一个键值对,以元组的形式返回)
1.字典不支持 + 和*
2.in 和 not in
key in 字典 - 判断字典中是否存在指定的key