一个字典中包含若干职工信息,每条信息包含员工姓名和年龄(姓名为关键字)。找到所有年龄>=60的员工名字,将名字存在退休人员列表里,打印输出后,删除列表以及对应内存信息。然后,删除字典退休人员的所有信息,仅保留在职员工信息
时间: 2024-02-20 22:02:00 浏览: 75
好的,这个问题需要涉及到字典的操作和列表的操作。我会给出一个示例代码,你可以参考一下:
```python
# 假设有一个包含职工信息的字典
employee_dict = {
'Tom': 55,
'Jerry': 62,
'John': 58,
'Alice': 65,
'Bob': 70
}
# 创建一个空的退休人员列表
retire_list = []
# 遍历字典中的每个键值对
for name, age in employee_dict.items():
if age >= 60:
# 如果这个职工的年龄大于等于60,将其名字添加到退休人员列表里
retire_list.append(name)
# 打印退休人员列表
print('退休人员名单:', retire_list)
# 删除退休人员信息
for name in retire_list:
del employee_dict[name]
# 打印在职员工信息
print('在职员工信息:', employee_dict)
```
运行这个代码,输出结果应该是:
```
退休人员名单: ['Jerry', 'Alice', 'Bob']
在职员工信息: {'Tom': 55, 'John': 58}
```
代码的解释如下:
- 首先,我们遍历字典中的每个键值对,如果这个职工的年龄大于等于60,就将其名字添加到退休人员列表里。这里使用了字典的items()方法,它可以返回一个包含所有键值对的元组列表。然后我们判断每个元组中的年龄是否大于等于60,如果是,就将名字添加到退休人员列表里。
- 然后,我们打印退休人员列表,可以看到其中有三个人的名字。
- 接下来,我们遍历退休人员列表,对于每个名字,使用del语句从字典中删除对应的键值对。这里需要注意的是,不能在遍历字典时修改它,因此我们需要先将要删除的键保存到一个列表中,最后再遍历这个列表进行删除。
- 最后,我们打印在职员工信息,可以看到只剩下两个人的信息了。
希望这个示例代码可以帮到你,如果还有其他问题,可以继续问我。
阅读全文