我有一个文本文件,其中列出了一组员工的姓名、身份证号、性别和工作年限。第一行包含员工人数。它被称为employees.txt。这里是:
7
约翰
能源部
33
272838
米
玛丽
约翰逊
38
3849383
F
奥派
狗
6
839293
米
小姐
狗
4
238392
F
约翰
布拉
28
834282
米
阿米莉亚
斯宾
2
5789812
F
谢恩
卡森斯蒂恩
2
567891
米
我想将这些信息组织成一个字典列表,然后找到所有女性员工并打印出她们的名字和姓氏。我可以让字典列表工作,但是当我尝试查找并打印出女性员工的姓名时出现错误。这是我的代码:
def employee_write(file):
employee_dict = {}
employee_dict["First"] = file.readline().strip()
employee_dict["Last"] = file.readline().strip()
employee_dict["Experience"] = file.readline().strip()
employee_dict["ID"] = file.readline().strip()
employee_dict["Gender"] = file.readline().strip()
return employee_dict
def female_print(x2):
for term in x2:
for word in employee_dict:
if employee_dict["Gender"] == "F":
print(employee_dict["First"])
print(employee_dict["Last"])
def main():
file = open("employees.txt", "r")
n = int(file.readline())
x1 = employee_write(file)
employee_list = []
for i in range(n):
employee_list.append(x1)
x2 = employee_list
print(x2)
female_print(x2)
main()
我的错误是什么?female_print() 函数不起作用,因为它表示未定义名称“employee_dict”。有什么问题?