# **** 把对象序列化到文件中 import pickle # 一个文件中只可以储存一个对象 用hashlib模块进行唯一区分 import hashlib class Stu: def __init__(self,name,age): self.name = name self.age = age def save(self): m = hashlib.md5() m.update(self.name.encode('utf-8')) hs = m.hexdigest() # 每一次储存的名称都不相同 pickle.dump(self,open(hs[:5],"wb")) # dump 到文件文件中 格式为二进制 s1 = Stu("黎明",18) s1.save() # 调用储存方法 s2 = Stu("老王",18) s2.save()
# ********* 从当前文件路径寻找文件 m = hashlib.md5() fand = input("请输入要咨询的名字").strip() m.update(fand.encode("utf-8")) # 编码为utf-8 f = m.hexdigest() s = pickle.load(open(str(f[:5]),'rb')) # load 取出 二进制格式 print(s.name,s.age)