今日内容:
一、元组tuple
作用:元组就相当于一种不可变的列表,所以说元组也是按照位置存放多个任意类型的元素
主要用来读
定义:在()内用逗号分隔开个多个任意类型的元素
类型转换:tuple(可迭代的类型)
注意,如果元组内只有一个值,要用,隔开
常用操作+内置方法:
优先掌握的操作:
1、按索引取值(正向取+反向取):只能取
2、切片(顾头不顾尾,步长)
3、长度
4、成员运算in和not in
5、循环
需要掌握的操作:
count
index
二、字典dict
作用:按照key:value的方式存放多个值,其中key对value应该有描述性的效果
定义:在{}内用逗号分隔开多个元素,每个元素都是key:value组合,其中value可以是任意类型
key必须是不可变类型,通常是字符串类型,并且key不能重复
字典是无序的
类型转换:dict
res = dict([("name","jay"),["age",18],["gender","male"]])
print(res)
快速初始化一个字典,即创建一个新字典,方便以后添加value
res = {}.fromkeys(['name','age','job'],None)
print(res)
常用操作+内置方法:
优先掌握的操作:
1.按key取值,可存可取
2.长度len
3.成员运算,in和not in判断的是key
4.删除
del
pop 返回的是value
popitem 随机删,返回的是元组(key+value)
python3中底层算法改变,让字典看起来像是有序的,实则无序
5.键keys(),值value(),键值items()
取字典的key,value,key+value分别取出来
d={"name":"jay",'age':18,"gender":"male"}
print(d.keys())
print(d.values())
print(d.items())
——————》
dict_keys(['name', 'age', 'gender'])
dict_values(['jay', 18, 'male'])
dict_items([('name', 'jay'), ('age', 18), ('gender', 'male')])
此时,python3的优化,又引入“老母鸡”的概念,原python2中产生的是新的列表“装鸡蛋的筐子”
6.循环
d = {"name": "jay", 'age': 18, "gender": "male"}
for k in d.keys(): = for k in d:
print(k)
for v in d.values():
print(v)
for k, v in d.items(): # k,v = ('gender', 'male'),
print(k, v)
print(list(d.keys()))
print(list(d.values()))
print(list(d.items()))
---------------》
['name', 'age', 'gender']
['jay', 18, 'male']
[('name', 'jay'), ('age', 18), ('gender', 'male')]
7.get:按照key取value,即取值方式
d = {"name": "jay", 'age': 18, "gender": "male"}
正常取值:
print(d['name'])
用get:
print(d.get('name'))
如果此时'name'这个key不存在,会显示打印结果为None
实际场景中,工作配合交接中,有代码是别人写的,你要接着这段代码继续写,此时你要在别人写的字典中取值,为了防止报错,此时用get取值
需要掌握:
1.update:更新
d = {"name": "jay", 'age': 18, "gender": "male"}
d.update({"name":"JAY","k1":"666"})
print(d)
更改旧的内容,添加新的内容
2.setdefault:如果key不存在则添加一组key:value,如果key存在则什么都不做
理解:
不存在添加一组key:value
d = {"name": "jay", 'age': 18, "gender": "male"}
if 'job' not in d:
d['job'] = 'music'
print(d) ————》
{'name': 'jay', 'age': 18, 'gender': 'male', 'job': 'music'}
如果key存在则什么都不做
d = {"name": "jay", 'age': 18, "gender": "male",'job':'XXXXX'}
if 'job' not in d:
d['job'] = 'music'
print(d) ————》
{'name': 'jay', 'age': 18, 'gender': 'male', 'job': 'XXXXX'}
所以,上述用if实现的功能就是setdefault
d = {"name": "jay", 'age': 18, "gender": "male"}
d.setdefault('job','music')
print(d)
————》
{'name': 'jay', 'age': 18, 'gender': 'male', 'job': 'music'}
d = {"name": "jay", 'age': 18, "gender": "male",'job':'XXXXX'}
d.setdefault('job','music')
print(d)
————》
{'name': 'jay', 'age': 18, 'gender': 'male', 'job': 'XXXXX'}