一.字典 python中,字典是一系列的键值对,并使用{}括起来,每个键和值关联,可以使用键来取值。字典的值,可以是python的任何对象,可以是数字,字符串,列表或者字典。例如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} 1.访问字典中的值 可以使用键来取其对应的值,格式:字典名[键名,如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) print(dates['monday']) print(dates['tuesday']) 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} 2.添加键值对 字典是一种动态结构,可随时在其中添加键值对。格式:字典名[键名]=值,如: 输入: colors = {'red': 1, "black": 2} print(colors) colors['yellow'] = 3 colors['blue'] = 4 print(colors) 输出: {‘red’: 1, ‘black’: 2} {‘red’: 1, ‘black’: 2, ‘yellow’: 3, ‘blue’: 4} 3.创建一个空字典 字典可以先定一个空字典,然后依次添加键值对,如: 输入: colors = {} print(colors) colors['red'] = 1 colors['black'] = 2 colors['yellow'] = 3 colors['blue'] = 4 print(colors) 输出: {} {‘red’: 1, ‘black’: 2, ‘yellow’: 3, ‘blue’: 4} 3.修改字典中的值 修改字典中的值,格式:字典名[键名]=新值,如: 输入: colors = {'red': 1, "black": 2} print(colors) colors['red'] = 0 print(colors) 输出: {‘red’: 1, ‘black’: 2} {‘red’: 0, ‘black’: 2} 4.删除键值对 可以使用del语句删除键值对,使用del语句时,必须指定字典名和键名。 格式:del 字典名[键名,如: 输入: colors = {'red': 1, "black": 2} print(colors) del colors['red'] print(colors) 输出: {‘red’: 1, ‘black’: 2} {‘black’: 2} 二.遍历字典 1.遍历所有的键值对 可以使用for循环遍历所以的键值对,如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) for key, value in dates.items(): print("key:" + key) print("value:" + str(value)+"\n") 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} key:monday value:1 key:tuesday value:2 key:wednesday value:3 key:thursday value:4 key:friday value:5 key:saturday value:6 key:sunday value:7 字典 items()方法返回,字典所有的键值对 2.遍历字典中的所有键 可以使用keys()方法返回所有的键列表,如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) for key in dates.keys(): print("key:" + key) 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} key:monday key:tuesday key:wednesday key:thursday key:friday key:saturday key:sunday 3.按顺序遍历字典中的所有键 可以在遍历所有键时,使用sorted()方法对键进行排序,如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) for key in sorted(dates.keys()): print("key:" + key) 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} key:friday key:monday key:saturday key:sunday key:thursday key:tuesday key:wednesday 4.遍历字典中的所有值 可以使用values()方法,返回字典所有的值列表。如: 输入: dates = {'monday': 1, 'tuesday': 2, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) for value in dates.values(): print("value:" + str(value)) 输出: {‘monday’: 1, ‘tuesday’: 2, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} value:1 value:2 value:3 value:4 value:5 value:6 value:7 可以使用set()方法,去除重复的值。如: 输入: dates = {'monday': 1, 'tuesday': 1, 'wednesday': 3, 'thursday': 4, 'friday': 5, 'saturday': 6, 'sunday': 7} print(dates) for value in set(dates.values()): print("value:" + str(value)) 输出: {‘monday’: 1, ‘tuesday’: 1, ‘wednesday’: 3, ‘thursday’: 4, ‘friday’: 5, ‘saturday’: 6, ‘sunday’: 7} value:1 value:3 value:4 value:5 value:6 value:7 三.嵌套 可以将字典存储在列表中,可以将列表存储在字典中 1.字典列表 将字典存储到列表中,如: 输入: colors_red = {'red': 1} colors_black = {"black": 2} colors = [colors_red, colors_black] print(colors) for color in colors: print(color) 输出: [{‘red’: 1}, {‘black’: 2}] {‘red’: 1} {‘black’: 2} 2.在字典中存储列表 将列表存储在字典中。如: 输入: audi_car = { 'name': 'audi', 'colors': ['red', 'white', 'black'] } print(audi_car) print(audi_car['name']) print(audi_car['colors']) for color in audi_car['colors']: print(color) 输出: {‘name’: ‘audi’, ‘colors’: [‘red’, ‘white’, ‘black’]} audi [‘red’, ‘white’, ‘black’] red white black 3.在字典中存储字典 可以在字典中存储字典,如: 输入: audi_car = { 'name': 'audi', 'colors': {'red': 1, 'white': 2, 'black': 3} } print(audi_car) print(audi_car['name']) print(audi_car['colors']) for key in audi_car.keys(): print("key:" + key) value = audi_car[key] print(value) print(type(value)) if type(value) == dict: for k, v in value.items(): print(k) print(v) 输出: {‘name’: ‘audi’, ‘colors’: {‘red’: 1, ‘white’: 2, ‘black’: 3}} audi {‘red’: 1, ‘white’: 2, ‘black’: 3} key:name audi ‘str’ key:colors {‘red’: 1, ‘white’: 2, ‘black’: 3} ‘dict’ red 1 white 2 black 3 type()方法判断变量类型
|