用ls.items()
它用于返回字典中的键值对的视图对象,
常用于处理字典中的数据,用于遍历字典并同时打印键值对
代码示例1
ls = {'a店卖:': "苹果", 'b店卖:': "火龙果" }
for key, value in ls.items():
print(key, value)
运行结果:

代码示例2:指定输出格式
python
my_dict = {'姓名': '张三', '年龄': 25, '居住地': '北京朝阳区36号'}
for key, value in my_dict.items(): # key, value可以替换为任意值
print(f"{key}: {value}")
运行结果:

注意:items()返回值是一个视图对象,不是列表
- 视图对象 :
items()返回的是一个视图对象,不是列表,因此不能直接修改 - 元组的形式 :每个键值对以元组的形式返 回,格式为
(key, value)
代码示例3:将返回值变为列表
用list( 字典.items() )
python
my_dict = {'苹果的单价': 5.0, '梨子的单价': 6.0}
items_list = list(my_dict.items()) # 把返回值转为列表的形式
print(items_list)
运行结果:

此时返回值是一个列表,不再是元组形式。
代码示例4:items(),结合for循环,结合if判断
python
data = {'苹果的数量': 5, '香蕉的数量': 3, '橙子的数量': 8}
# 判断每种水果是否满足指定库存(如果>4则满足,否则不打印)
for fruit, count in data.items():
if count > 4:
print(f"{fruit} 数量充足")
运行结果:

代码示例5:items(),结合for循环,结合二次字典的嵌套
python
sc_dict= {} # 设置一个空字典
score = {
"李东海":{"化学":93,"历史":82,"地理":72},
"王明兰":{"化学":72,"历史":75,"地理":98},
"徐福气":{"化学":87,"历史":68,"地理":91},
}
# print(len(score)) # len()不止可以量列表的长度,也可以量字典的长度
for i,sc in score.items(): # 依次遍历,取出第一个字典里的值,键,以score.items()作为容器
# print("每人名字", i) # 第一个字典里的键
# print("每人分数", sc.values()) # 第二个字典里的值
total = sum(sc.values())
# print("每人总分", total)
# print("每人平均分", total/len(sc))
# 将上述内容放入字典
sc_dict[i] = {"总分":total, "平均分":total/len(sc)}
print(sc_dict)
运行结果:
