元组,字典
今日内容:
一、元组 tuple
1、用途:元组就相当于一种不可变的列表,所以说元组也是按照位置存放多个任意类型的元素
2、定义方式:在()内用逗号分隔开个多个任意类型的元素
x=(11)
print(x,type(x)) #值在()里面,如果元组内只有一个元素,那么必须用逗号分隔
t=(11,11.33,"xxx",[44,55]) # t = tuple(...)
print(t[-1][0])
print(type(t))
数据类型转换 tuple(可迭代的类型)
3.常用操作+内置的方法
优先掌握的::
按索引取值(正向取+反向取):只能取
t=(11,22,33)
t[0]=7777 #报错
切片(顾头不顾尾,步长)
t=(11,22,33,44,55,666)
print(t[0:4:2])
长度 len
t=(11,22,33,44,55,666)
print(len(t))
成员运算in和not in
t=(11,22,33,[44,55,666]) print([44,55,666] in t) #True
循环
t=(11,22,33,[44,55,666])
for x in t:
print(x) #False
需要掌握的:
t=(33,22,33,[44,55,666])
print(t.count(33))# 统计数量
print(t.index(33,1,4)) # 索引查找位置
该类型的总结:
^ 存多个值
^ 不可变
二、字典类型 dict
1、用途:按照key : value的方式存放多个值,其中key对value应该有描述性的效果
2、定义方式:在{}内用逗号分隔开多个元素,每个元素都是key : value的组合,其中value可以是任意类型,但是key必须是不可变类型,通常是字符串类型,并且key不能重复
数据类型转换:
res = dict([("name","egon"),["age",18],["gender","male"]])
print(res)
res = dict(a=1,b=2,c=3)
print(res)
res = {}.fromkeys(['name',"age","gender"],None)
res = {}.fromkeys(['name',"age","gender"],11)
res["name"]=666
print(res) #fromkeys获取key值
or
res = {}.fromkeys(['name',"age","gender"],[])
res["name"]=666 res["name"].append(1111111)
print(res)
3、常用操作+内置的方法
优先掌握:
按key存取值:可存可取
d={"k1":111,'k2':222}
print(d['k1'])
d['k1']=6666 #以原来的k1替代
d['k3']=6666 #直接加上k3
print(d)
长度len
d={"k1":111,'k2':222}
print(len(d))
成员运算in和not in: 判断的是key
d={"name":"egon",'age':18} print("name" in d)
删除 del
d={"name":"egon",'age':18}
print(d)
del d["name"] #直接删除,万能删除
pop 删除(“ ")
v = d.pop("name")
print(d)
popitem 返回并删除字典中最后一对键和值,item是删除的返回值
d={"name":"egon",'age':18}
item = d.popitem()
print(item)
print(d)
键keys(),值values(),键值对items()
d={"name":"egon",'age':18,"gender":"male"}
print(d.keys())
print(d.values())
print(d.items())
打印--
dict_keys(['name', 'age', 'gender'])
dict_values(['egon', 18, 'male'])
dict_items([('name', 'egon'), ('age', 18), ('gender', 'male')])
循环
d={"name":"egon",'age':18,"gender":"male"}
for k in d.keys(): 或者 d.values():
print(k) #循环keys 或 values
d={"name":"egon",'age':18,"gender":"male"}
for k,v in d.items():
print(k,v) #解压赋值
用列表打印
d={"name":"egon",'age':18,"gender":"male"}
print(list(d.keys()))
print(list(d.values()))
print(list(d.items()))
get 获取valuer值
d={"name":"egon",'age':18,"gender":"male"}
print(d.get("name"))
需要掌握:
clear 清空字典
d={"name":"egon",'age':18,"gender":"male"}d.clear()
print(d)
d.copy() # 浅copy
key不存在则添加key:value,key如果存在则什么都不做,如:
d={"name":"egon",'age':18,"gender":"xxx"}
if "ooo" not in d:
d['ooo']="male"
print(d)
结果:{'name': 'egon', 'age': 18, 'gender': 'xxx', 'ooo': 'male'}
or---
d.setdefault("ppp","ooo")
print(d) #两个意思一样,如没有值,会添加
字典内容更新
d={"name":"egon",'age':18,"gender":"male"}
d.update({"k1":111,"name":"xxx"})
print(d)
#key原值会更新,如没有,会添加
总结该类型:
^ 存多个值
^ 无序
^ 可变