我有一个包含姓名和职位描述列表的文本文件,例如:
Jim Salesman
Dwight Salesman
Pam Receptionist
Michael Manager
Oscar Accountant
我想将“推销员”人员的姓名和工作添加到列表中。但同时,我也想打印出完整的姓名列表和职位描述。我为 Python 编写了以下代码:
employee_file = open("employees.txt", "r")
matching = [sales for sales in employee_file if "Salesman" in sales]
print (matching)
print (employee_file.read())
employee_file.close()
我得到的结果是:
['Jim Salesman\n', 'Dwight Salesman\n']
Process finished with exit code 0
但是,当我计算出第二行和第三行代码时,print(employee_file.read())将生成完整的姓名列表和职位描述。
有人可以解释为什么print (employee_file.read())当第二行和第三行代码保留时是空白吗?我怀疑这是因为employee_file是一个空变量。但我不明白为什么会这样。
在执行打印功能之前,我是否需要定义一个新变量employee_file2并重新打开“employees.txt”文件,例如:
employee_file2 = open("employees.txt", "r")
print (employee_file2.read())
在此先感谢您的帮助。
白衣染霜花
浮云间
相关分类