Fork me on GitHub

字典类型

1.用途

按key:value的形式存放多个任意类型的value,key反应的是value的属性

2.定义方式

在{}内用逗号分开多个key:value,其中value可以是任意类型

# 而key必须是不可变的类型,通常是字符串类型
d={'k1':111,'k1':222,'k1':333}
print(d)  #key重复只保留一个

#类型转换
l=[('name','egon'),('age',18),('gender','male')]
dic=dict(l)
print(dic)

dic=dict(x=1,y=2,z=3)
print(dic)
#{'x': 1, 'y': 2, 'z': 3}

#空字典
 d={}
print(type(d))
dic={}.fromkeys(['name','age','genden'],None)
print(dic)   #多个key且只能对应同一个value
dic = {}.fromkeys(['name', 'age', 'gender'], [])
print(dic)
{'name': [], 'age': [], 'gender': []}
dic.get('name').append(123)
print(dic)
{'name': [123], 'age': [123], 'gender': [123]}

3.常用操作+内置方法

优先掌握操作:
1.按key存取值:可存可取

dic={'name':'egon','gender':'male','age':18}
name=dic['name']
print(name)
res=dic['name']='arther'
print(dic)
print(res)  #也可以单独取出来

2.长度

print(len(dic)) #按key:value取值

3.成员运算in和not in

d={'k1':111,'k2':222,'k3':333}
print('k1' in d)
print(111 in d)
print(111 in d.values())

4.删除

d={'k1':111,'k2':222,'k3':333}
#万能删除,没有返回值
del d['k1']
print(d)

#随机删除,返回一个元组
res=d.popitem()
print(res)
print(d)

#指定key删除,有返回值,代表的是取走操作
res=d.pop('k1')
print(res)
print(d)

5.键keys(),值values(),键值对items()
d={'k1':111,'k2':222}
d.keys()
——>['k2', 'k1']
d.values()
——>222, 111]
d.items()
——>[('k2', 222), ('k1', 111)]

6.循环

d = {'k1': 111, 'k2': 222}
for k in d:
    print(k)

for v in d.values():
    print(v)

for k, v in d.items():
    print(k, v)

keys = []
for k in d:
    keys.append(k)

d = {'k1': 111, 'k2': 222}
keys = list(d)  # 将key值组成列表
print(keys)
values = list(d.values())
print(values)

类型总结

存多个值

无序

可变

posted @ 2020-09-01 09:56  artherwan  阅读(92)  评论(0编辑  收藏  举报