字典 && 字典的内置方法

字典 && 字典的内置方法

简介

字典是一种可变类型,切可以存储任意类型的对象

字典的每个键值使用:分割, 每个键值对之间使用(,)分割 整个字典包括在花括号中,格式如下

d = {key1:value1 , key2:value2 }

注意: | 键必须是唯一的, 但是值不一定

注意: | 值可以是任何数据类型,但键必须是不可变的,如字符串,数字 或者元组

字典存在的意义

字典的数据不像是列表和元组 数据的查询依据为索引(索引信息量少) | 字典依赖于有描述的key来查询数据

python 中的字段,values是无序存储, 字典 增删插 效率高, python中对字典的key做客有序优化,所以查询效率也不算低

赋值

dict = {"name":"wuqiyu","age":25}

访问字典里的值

把相应的键放到方括号中,如以下示例

dict={"name":"wuqiyu","age":25}
print(f"your name is { dict['name'] }")

定义方式

UTOOLS1573473196867.png

内置方法

dict 快速转化为list

 lis = list(d3.items())
 print(lis)                  #[('age', 25), ('name', 'bob')]
 print(type(lis))            #<type 'list'>
 print(type(lis[0]))         #<type 'tuple'>

增删改查

dict1 = {'name':'Tom','age':18}
#增
dict1['height']=180

#删
del dict1['age']

#改
dict1['name']='bob'

#查
print(dict1['name'])

总结 | 字段名[key] 不赋值;就是查,赋值key;不存在则是增,存在则是改 del命令 删除某个键值对

注意| 字典的value可以不存在,但是key绝对不可以不存在,否则报错

get | 取出key对应的值,如果值不存在,则取出none ,或者取出默认值

d1 = {"k1":"v1","k2":"v2"}
print(d3.get('name'))           #bob
print(d1.get("name"))           #none
print(d1.get("name",'nobody'))  #nobody  

update | 存在key则覆盖内容,不存在则增加内容(可以增加多条)

d1.update({"x":1,"Y":2,"Z":3})
print (d1)
#{'Y': 2, 'k2': 'v2', 'k1': 'v1', 'Z': 3, 'x': 1}

pop | 弹出指定key的key && value

dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
print(dict1.pop('h2'))  #从后往前pop
print(dict1.popitem()) #不需要指定参数 弹出最后一个
print(dict1)

UTOOLS1573525372933.png

clear | 清空字典

dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
print(dict1.clear())
print(dict1)

UTOOLS1573525496254.png

for | 循环

dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
for k in dict1:     #取出了所有的key(键)
    print(k)
#等同于
for k in dict1.keys():
    print(k)

image-20191112102709142

#取出所有的v(值)
dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
for v in dict1.values():
    print(v)

UTOOLS1573525785864.png

#取出所有的键和值
dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
for v in dict1.items():
    print(v)
    print(type(v))

image-20191112103043093

#分别取出字典的key和value 赋值给两个不同的变量名(解压缩)
dict1={"name":"wuqiyu","age":25,'h1':"唱","h2":"跳"}
for keys,values in dict1.items():
    print(keys,values)
    print(type(keys))
    print(type(values))

UTOOLS1573525946598.png

猜你喜欢

转载自www.cnblogs.com/blog5434/p/11861890.html
今日推荐