1.1 列表的定义
L = [1, 'mrz', [1, 2], {'age':18}] # 本质上是 L = list(L)
1.2 类型转换
将其它数据类型转换成列表类型,list()函数的参数必须是可迭代对象。
1.3 内置的方法
优先掌握的操作:
1.3.1 按照索引存取值
list是可变数据类型,可以按照索引修改列表中的值。
1.3.2 切片
切片可以正向切和反向切,默认步长为1;切片相当于浅拷贝。
1.3.3 长度
len()
1.3.4 成员运算
in 和 not in
1.3.5 往列表中添加值
# (1)在列表的末尾添加值
L.append('1')
# (2)按照索引插入值
L.insert(1,12)
# (3)插入可迭代对象
itr = 'mrz'
L.extend(itr)
1.3.6 删除
# (1)删除指定位置的元素,没有返回值
res = del L[0]
# (2)删除指定位置的元素,默认是最后一个元素,返回被删除的值
res = L.pop(0)
# (3)删除指定的值,返回None
res = L.remove(1)
需要掌握的操作:
1.3.7 count方法,计算对象在列表中出现的次数
res = L.count(1)
1.3.8 从指定范围内查找列表元素的索引,找不到报错
res = L.index(1,0,2)
1.3.9 清空列表中的元素,返回None
res = L.clear()
1.3.10 列表中的元素倒序
res = L.reverse()
1.3.11 列表内元素必须是同种类型才可以排序,默认是升序
res = L.sort()
了解:字符串可以比大小,比较对应的位置的字符ascii码值
了解:列表也可以比大小,原理同字符串一样,但是对应位置的元素必须是同种类型
1.3.12 补充
队列:先进先出
堆栈:先进后出了解:列表也可以比大小,原理同字符串一样,但是对应位置的元素必须是同种类型
2.1 元组的定义
tup = (1,'m',[2, 3], {'age':18}) # 本质上是tup = tuple(tup)
如果元组中只有一个元素,必须加逗号。
tup = (1,)
2.2 类型转化
将其它数据类型转换成元组类型,tuple()函数的参数必须是可迭代对象。
2.3 内置的方法
优先掌握的操作:
2.3.1 按索引取值
只能取值不能修改。
2.3.2 切片
顾头不顾尾,默认步长为1。
2.3.3 len()
2.3.4 in 和 not in
2.3.5 可迭代对象,for循环遍历取值
2.3.6 count()方法,同列表
2.3.7 index()方法,同列表
3.1 字典的定义
dic = {'name': 'mrz', 'age': 18} #本质上是dic = dict(dic)
字典是由键值对组成,字典中的键必须是不可变数据类型且不能重复 ,值可以是任意数据类型。
3.2 定义字典的四种方式
# 方式一:直接定义
dic = {'name': 'mrz', 'age': 18}
# 方式二:使用变量赋值的方式定义 dic1 = dict(name='mrz', age=18)
# 方式三:可迭代数据中嵌套长度为2的可迭代数据类型
info=[
['name','egon'],
('age',18),
['gender','male']
]
dic2 = dict(info)
# 方式四:使用fromkey()方法快速初始化一个字典
keys = ['name', 'age', 'gender']
dic3 = {}.fromkeys(keys, None)
3.3 内置的方法
优先掌握的操作
3.3.1 按key存取值
使用dict[key]访问字典中的值,字典是可变数据类型,使用dict[key] = value 可以修改值或新增值。
3.3.2 字典的长度len()
key的数量就是字典的长度。
3.3.3 in 和 not in
判断key是否在字典中而不是value。
3.3.4 删除字典中键值对的三种方法
# 方法一:del dict[key]
dic = {'name': 'mrz', 'age': 18}
del dic['name']
print(dic)
# 方法二:返回删除的值
dic = {'name': 'mrz', 'age': 18}
res = dic.pop('age')
print(dic)
print(res)
# 方法三:删除字典中最后一对键值对,返回一个元组
dic = {'name': 'mrz', 'age': 18}
res = dic.popitem()
print(dic)
print(res)
3.3.5
dic.keys() dic.values() dic.items() 得到的是一个‘老母鸡’(迭代器)
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
for k in dic.keys():
print(k)
for v in dic.values():
print(v)
for k, v in dic.items(): print(k, v)
需要掌握的操作
3.3.6 dic.clear()
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
dic.clear()
print(dic)
>>>{}
3.3.7 dic.update() 更新字典中的键值对
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
dic.update({'name':'mrz1'})
print(dic)
>>>{'name': 'mrz1', 'age': 18, 'sex': 'male'}
3.3.8 dic.get() 容错性好,取错key的值不会报错
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
res = dic.get('name1')
print(res)
>>>None
3.3.9 dic.setdefault()
如果key有则不添加,返回字典中key对应的值
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
res = dic.setdefault('name',18)
print(dic)
print(res)
>>>
{'name': 'mrz', 'age': 18, 'sex': 'male'}
mrz
如果key没有则添加,返回字典中key对应的值
dic = {'name': 'mrz', 'age': 18, 'sex':'male'}
res = dic.setdefault('name1',18)
print(dic)
print(res)
>>>
{'name': 'mrz', 'age': 18, 'sex': 'male', 'name1': 18}
18