一、字典(dict)的定义
dict由大括号’{}’定义,元素是key/value对的形式存储,key/value中间用‘:‘分割,key/value对之间用‘,‘分割,key只可读,不能被修改,key并且是唯一的。
创建一个含有两个key/value对的字典dict1 = {'name':'张三','age':15}
创建一个空字典dict2 = {}
二、字典(dict)常用函数
dict1 = {‘name’:’张三’,’age’:15}
dict1 = {‘gender’:’男’,’birthday’:’12-11’}
函数 | 说明 | 描述 |
---|---|---|
update(other_dict) | 将另外一个字典添加到原来字典的右边 | 参数也是一个字典 |
copy() | 复制一个字典 | |
pop(key) | 从字典中删除key | 返回key对应的value |
popitem() | 从字典的右测删除一个key/value | 返回由key/value组成的元组 |
get(key) | 查找字典中key的value | 和dict[key]相似,区别在于get(key)找不到key就返回None,dict[key]则会抛出异常 |
fromkeys(*args, **kwargs) | 生成新的字典 | 第一个参数是字典的key集合,第二个参数是value |
keys() | 返回字典所有key的集合 | |
values() | 返回字典value的集合 | |
items() | 返回字典key/value的集合 | |
setdefault(key,value) | 字典末尾添加一个key/value对 | |
clean() | 清空字典的所有key/value |
测试:
if __name__ == '__main__':
dict1 = {}
dict1 = {'a':1,'b':'2'}
print(type(dict1))
dict1 = {'name': '张三', 'age': 15}
dict2 = {'gender': '男', 'birthday': '12-11'}
dict1.update(dict2)
print(dict1)
dict3 = dict1.copy()
print(dict3)
print(dict1.pop('gender'))
print(type(dict3.popitem()))
print(dict3)
print(dict3.get("gender"))
list = [1,2,3,4,5]
set = (2,'a')
print(dict.fromkeys(list,set))
print(dict3.keys())
print(dict3.values())
print(dict3.items())
dict3.setdefault("SEX","M")
print(dict3)
dict3.clear()
print(dict3)
测试结果
<class 'dict'>
{'name': '张三', 'age': 15, 'gender': '男', 'birthday': '12-11'}
{'name': '张三', 'age': 15, 'gender': '男', 'birthday': '12-11'}
男
<class 'tuple'>
{'name': '张三', 'age': 15, 'gender': '男'}
男
{1: (2, 'a'), 2: (2, 'a'), 3: (2, 'a'), 4: (2, 'a'), 5: (2, 'a')}
dict_keys(['name', 'age', 'gender'])
dict_values(['张三', 15, '男'])
dict_items([('name', '张三'), ('age', 15), ('gender', '男')])
{'name': '张三', 'age': 15, 'gender': '男', 'SEX': 'M'}
{}