我正在创建一个管理病人档案的程序;它是项目的一部分。我创建了一个日志文件。我把患者的信息作为文件中的实例进行了腌制。在下面的代码中,我尝试遍历文件并接收满足给定条件的患者实例:
def searchpatientnumber():
patobj=open("G:\patientregister.log", "ab+")
test=patient() #the patient class
patientid=raw_input("Enter patient register number:")
import pickle
test=pickle.load(patobj)
try:
while True: #I hoped that this loop will help read the whole file
if test.registerno==patientid: #registerno is a datamember
test.displaynumber() #member function
break
else:
print "Patient not registered, try again."
break
except EOFError:
patobj.close()
代码有效,但是,它只能读取文件中的第一个实例,但无法读取其余部分。我可以请一种方法来遍历二进制文件的所有实例吗? 谢谢。