python基础-字典dict

1、字典dict的概念和特点

概念:是一种无序的可变集合,用于存储键值对。

特点:

  • 用大括号 { } 标识;
  • 字典中的键必须唯一且不可变(如字符串、整数、元组),值可以是任意类型的对象。

2、字典的创建

2.1 对象式
dict1 = {}
2.2 函数式
dict1 = dict()  # 传参原则:能转为键值对形式;参数: **kwarg
# 例子:
dict1 = dict(name = "张三",age = 12)
print(dict1)  # {'name': '张三', 'age': 12}

3、字典的操作

字典是一个键值对的容器,所以可以进行各种操作;

3.1 dict的增:
dict名[key] =value 通过key 直接赋值value; --- 也具有改的功能
3.2 dict的改:        
方法 作用
dict1.update( **keywords)

通过key修改value数据 ---- 也具有增的功能

注意:  key不要添加引号!

dict1 = dict(name = "张三",age = 12)
dict1.update(haha ='嘿嘿') #修改方法实现了新增操作!
print(dict1) # {'name': '张三', 'age': 12, 'haha': '嘿嘿'}
3.3 dict的删:
方法 作用
pop(key) 删除key对应的键值对;
popitem()

删除当前顺序的最后一个键值对;

返回被弹出的元素;

clear() 清空字典;
关键字 作用
del 字典名[key]

del 关键字 :删除k-v对;

例: del dict1[key]   删除k-v对 ;  del dict1 销毁字典

3.4 dict的查:
方法        作用
get(key [,defaultVal ])

通过key获取value; 

注意: key不存在,不会抛异常,还可以设置默认值返回;

items()

返回一个(key,value)元组的列表形式;  --- 见下面案例!

类型:  字典视图对象

keys()

返回字典的所有的key ;

类型为  字典key对象  

values()

返回字典的所有的value;

类型为  字典value对象

下标访问 作用
value = dic[key]

通过下标key返回value; 

注意:key不存在,抛异常。

dict1 ={'c': '11', 'b': 22, 'a': '嘿嘿'}
res = dict1.items()
# items的返回类型是dict_items -- 字典视图对象
print(res)       # dict_items([('c', '11'), ('b', 22), ('a', '嘿嘿')])
print(type(res))              #
print(type(res) is list)      # False
print(dict1.keys())           # dict_keys(['c', 'b', 'a'])
print(type(dict1.keys()))     # 
print(dict1.values())         # dict_values(['11', 22, '嘿嘿'])
print(type(dict1.values()))   # 
3.5 其它:
方法 作用
dict1.copy() 实现复制;返回 新的 字典; --- 浅拷贝
dict2 = dict1  直接赋值方式 :实现了copy , ---- 浅拷贝
setDefault(key ,defaultVal ) 添加k-v,设置默认值;
关键字 作用
key in  dict1 判断key 是否在 字典中 , 返回 bool值
 扩展 :

  Python3有copy内置模块:可以实现复制 

  • 先导入 import  copy 
copy.copy(obj) 浅拷贝
copy.deepcopy(obj) 深拷贝

4、遍历:

使用for循环遍历:

dict1 = {'b': 22, 'a': 11, 'c': 33}
for item in dict1:
    # key 是 item  ,value 是 dict1[item]
    print(item, " --- ", dict1[item]);
## b  ---  22
## a  ---  11
## c  ---  33
dict1 = {'b': 22, 'a': 11, 'c': 33}
for item in dict1.items():
    print(item[0],item[1]);

你可能感兴趣的:(python-基础,python,开发语言)