数据持久化–减肥小程序
#!/usr/bin/env python
# coding=utf-8
import pickle
class Person:
def __init__(self, w):
self.w = w
def jianfei(self):
if self.w > 0:
self.w -= 10
print(self.w)
return self.w
def show(self):
print(self.w)
# 使用到pickle,首次需要预热下文件.
# 创建对象,将对象存储到文件
# p = Person(100)
#
# p.jianfei()
def w_save(p1):
"""传入对象,pickle存储对象"""
s = pickle.dumps(p1)
f = open('demo5-info.txt', 'wb')
f.write(s)
f.close()
def w_load():
"""pickle读取数据,返回对象"""
f = open('demo5-info.txt', 'rb')
s = f.read()
f.close()
p1 = pickle.loads(s)
return p1
# w_save(p)
# 通过循环程序操作
while True:
p1 = w_load()
w=p1.jianfei()
if w<=0:
break
p1.show()
w_save(p1)