创建字典的用法有两种:
方法一:键值对的方法:
1 my_dict={"key1":"value1","key2":"value2","key3":"value3" ……}
my_dict = {"name": "小明", "age": 20, "sex": "男"}
print(my_dict)
输出格式如下:
{'name': '小明', 'age': 20, 'sex': '男'}
方法二:通过映射函数创建字典,
list1:一个列表,用于指定要生成字典的键
list2:一个列表,用于指定要生成字典的值
返回值:如果list1和list2的长度不同,则与最短的列表长度相同
字典的另一种写法:
这里的元素 1 3 5代表的是key值 元素2 4 6代表的是value值
my_dict=dict( ( (元素1,元素2),(元素3,元素4),(元素5,元素6)……) )
my_dict = dict(zip(list1, list2))
1 # 通过映射函数创建字典,
2
3 name = ["邓肯", "吉诺比利", "帕克"]
4 sign = ["是佛", "妖刀", "跑车"]
5
6 # dictionary = dict(zip(list1, list2))
7 # 输出的格式为键值对格式
8 my_dic = dict(zip(name, sign))
9 print(my_dic)
10
输出格式如下:
· {'邓肯': '是佛', '吉诺比利': '妖刀', '帕克': '跑车'}
11 # 输出的格式为:列表格式,列表里为元组,元组里为字符串
12 # list = list(zip(list1, list2))
13 my_dict = list(zip(name, sign))
14 print(my_dict)
输出格式如下:
[('邓肯', '是佛'), ('吉诺比利', '妖刀'), ('帕克', '跑车')]
创建一个空值的字典:
使用dict对象的fromkeys()方法创建值为空的字典,
1 name_list = ["邓肯", "吉诺比利", "帕克"]
2 dictionary = dict.fromkeys(name_list)
3 print(dictionary)
输出格式如下:
{'邓肯': None, '吉诺比利': None, '帕克': None}
通过已经存在的元组和列表创建字典:
1 name_tuple = ("邓肯", "吉诺比利", "帕克")
2 sign = ["是佛", "妖刀", "跑车"]
3 dict1 = {name_tuple: sign}
4 print(dict1)
输出结果如下:
{('邓肯', '吉诺比利', '帕克'): ['是佛', '妖刀', '跑车']}
字典的删除:(dictionary为字典的名称)
删除整个字典:
del dictionary
删除字典中的全部元素
dictionary.clear()
删除并返回指定“键”的元素(指定删除字典中那个键值)
dictionary.pop("字典的"key"")
1 my_dict = {"name": "小明", "age": 20, "sex": "男"}
2 print(my_dict)
3 my_dict.pop("age")
4 print(my_dict)
输出结果如下:
{'name': '小明', 'age': 20, 'sex': '男'}{'name': '小明', 'sex': '男'}
删除并返回字典中的一个元素
dictionary.popitem()
my_dict = {"name": "小明", "age": 20, "sex": "男"}
print(my_dict)
# 输出删除后的字典并返回删除的字典键值
ret = my_dict.popitem()
print(ret)
#输出的结果为:
# ('sex', '男')
# 输出删除后剩余的字典元素
my_dict.popitem()
print(my_dict)
#输出的结果为:
# {'name': '小明', 'age': 20}
获取字典中想要的元素:
方法一:通过“key”值获取想要的元素(不建议使用这种方法,如果通过key值获取,key值不存在,程序会报异常)
方法二:通过get()方法获取键的值
1 name = ["邓肯", "吉诺比利", "帕克"]
2 sign = ["是佛", "妖刀", "跑车"]
3 my_dict = dict(zip(name, sign))
4 # print(my_dict)
5 # 返回值为默认的
6 print("吉诺比利的绰号是:", my_dict.get("吉诺比利"))
7 # key值不存在的情况下返回: "我的字典里没有此人"
8 print("罗宾逊的绰号是:", my_dict.get("罗宾逊", "我的字典里没有此人"))
















