第十课 获取字典中的key和value(items方法和key方法)
# items方法和keys方法
# items 方法用于返回字典中所有的key value 对 获得的每一个kv对用一个元组来表示 items方法返回的值被成为字典视图的一个特殊类型 可以直接用于迭代 for 循环里面
# items 的返回值 与字典使用的同样的值 我们修改了一方的值,另外一方也会同样改变。
'''
key 方法用于返回字典中所有的key 与items方法类似,也可以用于迭代 for循环
'''
d = {'help':'帮助','bike':'自行车','plane':'飞机','China':'中国'}
print(d.items()) # dict_items([('help', '帮助'), ('bike', '自行车'), ('plane', '飞机'), ('China', '中国')]) 输出的每一个元素就是一个元组
for key_value in d.items():
print("key","=",key_value[0],"value","=",key_value[1])
'''
key = help value = 帮助
key = bike value = 自行车
key = plane value = 飞机
key = China value = 中国
'''
for key,value in d.items():
print("{} = {}".format(key,value))
"""
help = 帮助
bike = 自行车
plane = 飞机
China = 中国
"""
print(('bike','自行车') in d.items()) # True
dict_items = d.items()
d['bike'] = '自行车;摩托车;电动自行车'
print(dict_items) # dict_items([('help', '帮助'), ('bike', '自行车;摩托车;电动自行车'), ('plane', '飞机'), ('China', '中国')])
print(d.keys()) # dict_keys(['help', 'bike', 'plane', 'China'])
for key in d.keys():
print(key)
'''
help
bike
plane
China
'''
----------------------------------------------------
第十一课 弹出字典中的值(pop方法和popitem方法)
# pop方法和popitem方法
# pop方法,用于获取指定的key的值,并从字典中弹出这个key-value对
# popitem方法用于返回字典中最后一个key-value对,并弹出key-value对
d = {'c':10,'a':40,'b':12,'x':45}
d['1'] = 20 # 首先先添加2组 元素
d['5'] = 100
print(d) # {'c': 10, 'a': 40, 'b': 12, 'x': 45, '1': 20, '5': 100}
print(d.pop('a')) # 40 获取指定key的值
print(d) #{'c': 10, 'b': 12, 'x': 45, '1': 20, '5': 100} a的这个值的kv元素一起弹出来了
#40
#{'c': 10, 'b': 12, 'x': 45, '1': 20, '5': 100}
print(d.popitem()) # ('5', 100)
for i in range(len(d)):
print(d.popitem())
'''
输出结果为:
('5', 100)
('1', 20)
('x', 45)
('b', 12)
('c', 10)
'''
----------------------------------------------------
第十二课 添加但不修改value(setdefault方法)
# setdefault方法: 如果这个key在字典中不存在,那么就在字典中添加一组值,然后返回value;如果这个key在字典中已经存在了,那么就会忽略后面的值,返回在字典中存在的值。如果我们不指定第二个参数值,那么就会返回None
d = {"name":"Bill", "age":30}
d['salary'] = 2000
d['age'] = 50 # 如何这个元素在字典中不存在,那么在后面会添加一组,如果存在那么久修改他的value
print(d) #{'name': 'Bill', 'age': 50, 'salary': 2000}
# None
print(d.setdefault("location","中国"))
print(d)
'''
中国
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国'}
'''
print(d.setdefault("location", "德国"))
print(d)
'''
中国
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国'}
'''
print(d.setdefault("abc"))
print(d)
'''
None
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国', 'abc': None}
'''
'''
中国
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国'}
中国
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国'}
None
{'name': 'Bill', 'age': 50, 'salary': 2000, 'location': '中国', 'abc': None}
'''
----------------------------------------
第十三课 成批导入字典数据(update方法)
# update方法
# 用一个字典中的key-value对更新另外一个字典,该方法接收一个参数
# 用作数据源的字典
# dict1.update(dict2) 没有就插入,有的话,就更新
d1 = {
'title':'欧瑞学院',
'website':'https://geekori.com',
'description':'从事在线IT课程研发和销售'
}
d2 = {
'title':'欧瑞科技',
'products':['欧瑞学院','博客','读书频道','极客题库','OriUnity'],
'description':'从事在线IT课程研发和销售,工具软件研发'
}
d1.update(d2) # 用d2的字典去改变 d1 没有就直接增加,有的话,就用d2中的字典的值去更新update
print(d1)
'''
{'title': '欧瑞科技', 'website': 'https://geekori.com', 'description': '从事在线IT课程研发和销售,工具软件研发', 'products': ['欧瑞学院', '博客', '读书频道', '极客题库', 'OriUnity']}
'''
------------------------------------------------
第十四课 获取字典中值的列表(values方法)
# values方法: 获取字典中值的列表,value是可以重复的,可以有多个一样的
# keys方法: 用于返回字典中key的列表 key是唯一的,不可以重复的。
# items方法: 想得到字典中所有的key 和 value ; 要结合for 循环
d = {
'a':1,
'b':2,
'c':2,
'd':3,
'e':4,
'e':40
}
print(d) # {'a': 1, 'b': 2, 'c': 2, 'd': 3, 'e': 40} 这里面e 的值被后面的覆盖了
print(d.values()) # dict_values([1, 2, 2, 3, 40])
print(d.keys()) # dict_keys(['a', 'b', 'c', 'd', 'e'])
for value in d.values():
print(value)
'''
1
2
2
3
40
'''
# keys(只获取key)、values(只获取value)、items(获取key 和value)
原创文章,作者:奋斗,如若转载,请注明出处:https://blog.ytso.com/184963.html