:
运行以下代码会给我这个错误:
Traceback(最近一次调用最后一次):文件 " C:\ Users \ hello \ Desktop \ bhavi \ python programming \ Employ.py",第78行, 在 emp1 = pickle.load(fh)EOFError
在处理上述异常期间,发生了另一个异常:
Traceback(最近一次调用最后一次):文件 " C:\ Users \ hello \ Desktop \ bhavi \ python programming \ Employ.py",第85行, 在 os.remove(" empl.txt")FileNotFoundError:[WinError 2]系统找不到指定的文件:' empl.txt'
我现在该怎么办?
答案 0 :(得分:0)
你应该修好你的道路。在第一种情况下,你写"emp1.txt"
;在第二个,你写"empl.txt"
。如果你仔细观察,你应该注意到这两个字符串有所不同。
提示: '1' != 'l'
您的代码也可能会被重构。虽然其他人无法测试您的代码,因为它非常不完整,但以下内容应该可以正常运行。您仍需要验证它是否有效。
elif ch == 2:
with open('emp1.txt', 'rb+') as fh, open('temp.txt', 'wb+') as fo:
ecode = input('Enter the Ecode: ')
while True:
try:
item = pickle.load(fh)
except EOFError:
break
else:
if item.ecode != ecode:
pickle.dump(item, fo)
os.remove(fh.name)
os.rename(fo.name, fh.name)
print()
答案 1 :(得分:0)