python-11-字典的增删改查

前言

1、dict 字典:{key,vlaue} --key 必须是不可变数据类型,可哈希,--value:任意数据类型

2、dict优点:二分查找去查询
--存储大量的关系型数据,可哈希。
--无序的,通过key查找

一、增

1、第一种

# 第一种
dic = {"name": "小龙", "age": 22, "job": "IT"}

dic["high"] = 175   # 没有key时则新增
dic["age"] = 16     # 有key时,value被覆盖
print(dic)

 2、第二种

# 第二种
dic = {"name": "小龙", "age": 22, "job": "IT"}

dic.setdefault('sex', 'man')    # 没有key时则新增
dic.setdefault('age', '22')     # 有key时,不做任何改变
print(dic)

 二、删

1、第一种

# 第一种
dic = {"name": "小龙", "age": 22, "job": "IT"}

name = dic.pop('age')       # 按key删除,有返回值
print(dic)
print(name)

 2、第二种,建议用这种

# 第二种,常用
dic = {"name": "小龙", "age": 22, "job": "IT"}
name = dic.pop('sex', '没有key')       # 可设置返回值,避免报错
print(dic)
print(name)

 3、第三种,清空dict

# 第三种清空dict
dic = {"name": "小龙", "age": 22, "job": "IT"}
dic.clear()
print(dic)

 4、第四种,没有返回值

# 第四种,没有返回值
dic = {"name": "小龙", "age": 22, "job": "IT"}
del dic['name']
print(dic)
del dic         # 删除整个dict

 三、改

1、第一种

# 第一种
dic = {"name": "小龙", "age": 22, "job": "IT"}
dic['age'] = 18
print(dic)

 2、 第二种 update,dic 覆盖添加到dic1

# 第二种 update,覆盖添加
dic = {"name": "小龙", "age": 22, "like": "IT"}
dic1 = {"name": "玲玲", "age": 18, "job": "大宝剑"}
dic1.update(dic)
print(dic)
print(dic1)

 四、查

1、可分别查key、value,或查key:value

# 4、查
dic = {"name": "小龙", "age": 22, "like": "IT"}
print(dic['name'])                                  # 查看name对应的value,没有找到会报错
print(dic.get('name1', '没有这个value'))           # 可设置返回值,推荐
print(dic.keys())       # key
print(dic.values())     # value
print(dic.items())      # 元组的键值

 

 QQ交流群:99941785

猜你喜欢

转载自www.cnblogs.com/gsxl/p/11963590.html