字典的其他操作
key_list = dic.keys() print(key_list) # 结果: # dict_keys([\'剑圣\', \'哈啥给\', \'大宝剑\']) # 一个高仿列表,存放的都是字典中的key # 并且这个高仿的列表可以转化成列表 print(list(key_list)) # 它还可以循环打印 dic = {\'剑圣\':\'易\',\'哈啥给\':\'剑豪\',\'大宝剑\':\'盖伦\'} for i in dic: print(i) value_list = dic.values() print(value_list) # 结果: # dict_values([\'易\', \'剑豪\', \'盖伦\']) #一个高仿列表,存放都是字典中的value # 并且这个高仿的列表可以转化成列表 print(list(value_list)) # 它还可以循环打印 for i in dic.values(): print(i) key_value_list = dic.items() print(key_value_list) # 结果: # dict_items([(\'剑圣\', \'易\'), (\'哈啥给\', \'剑豪\'), (\'大宝剑\', \'盖伦\')]) # 一个高仿列表,存放是多个元祖,元祖中第一个是字典中的键,第二个是字典中的值 # 并且这个高仿的列表可以转化成列表 print(list(key_value_list )) # 它还可以循环打印 dic = {\'剑圣\':\'易\',\'哈啥给\':\'剑豪\',\'大宝剑\':\'盖伦\'} for i in dic.items(): print(i) # 结果: # (\'剑圣\', \'易\') # (\'哈啥给\', \'剑豪\') # (\'大宝剑\', \'盖伦\') a,b = 1,2 print(a,b) # 结果: # 1 2 a,b = (\'你好\',\'世界\') # 这个用专业名词就叫做元组的拆包 print(a,b) # 结果: # 你好 世界 a,b = [\'你好\',\'大飞哥\'] print(a,b) # 结果: # 你好 大飞哥 a,b = {\'汪峰\':\'北京北京\',\'王菲\':\'天后\'} print(a,b) # 结果: # 汪峰 王菲 for k,v in dic.items(): print(\'这是键\',k) print(\'这是值\',v) # 结果: # 这是键 剑圣 # 这是值 易 # 这是键 哈啥给 # 这是值 剑豪 # 这是键 大宝剑 # 这是值 盖伦
字典的嵌套
字典的嵌套是非常重要的知识点,这个必须要建立在熟练使用字典的增删改查的基础上,而且字典的嵌套才是咱们在工作中经常会遇到的字典,工作中遇到的字典不是简简单单一层,而就像是葱头一样,一层接一层,但一般都是很有规律的嵌套,那么接下来我们就学习一下字典的嵌套:
现在有如下字典,完成一下需求:
dic = { \'name\':\'汪峰\', \'age\':48, \'wife\':[{\'name\':\'国际章\',\'age\':38}], \'children\':{\'girl_first\':\'小苹果\',\'girl_second\':\'小怡\',\'girl_three\':\'顶顶\'} } # 1. 获取汪峰的名字。 # 2.获取这个字典:{\'name\':\'国际章\',\'age\':38}。 # 3. 获取汪峰妻子的名字。 # 4. 获取汪峰的第三个孩子名字。解题思路:
1.获取汪峰的名字。: 这个比较简单,汪峰就是dic的一个键对应的值,我们通过这个key就可以获取到汪峰这个值。
name = dic[\'name\'] print(name)获取这个字典{\'name\':\'国际章\',\'age\':38}: 想要获取这个字典,先要看字典从属于谁?这个字典从属于一个列表,而这个列表是字典wife对应的键,所以咱们应该先通过wife获取到对应的这个列表,然后通过这个列表按照所以取值取到对应的这个字典。
l1 = dic[\'wife\'] # 先获取到这个列表 di = l1[0] # 列表按照索引取值,这个字典是列表的第一个元素,所以通过索引获取到这个字典 print(di) # 当然上面是分布获取的,我们还可以合并去写: di = dic[\'wife\'][0] print(di)获取汪峰的妻子名字: 还是按照上一题的思路:想要获取汪峰妻子的名字:国际章,那么他是一个字典的键对应的值,所以我们通过\'name\'这个键就可以获取到对应的值,这个题的难点是获取到这个小字典,而上一个题我们已经获取了这个小字典,所以在上面的基础上再执行就可以了。
di = dic[\'wife\'][0] # 这个是上一次题获取的小字典的代码 wife_name= di[\'name\'] # 通过小字典然后再通过键就能获取到对应的值 print(wife_name) # 当然咱们可以简化: wife_name = dic[\'wife\'][0][\'name] print(wife_name)获取汪峰的第三个孩子名字: 汪峰的孩子们是在一个字典中的,你要想获取汪峰的第三个孩子,你应该先获取到它从属于的这个字典,然后再通过这个字典获取第三个孩子的名字。
dic2 = dic[\'children\'] # 先获取这个字典 name = dic2[\'girl_three\'] # 在通过这个字典获取第三个孩子的名字 print(name) # 当然你可以简化: name = dic[\'children\'][\'girl_three\'] print(name)集合(set)