使用Python来设计一个专门存储数据的类,代码怎么写?
import json
class DataStorage:
def __init__(self, file_path):
self.file_path = file_path
self.data = self.load_data()
def load_data(self):
try:
with open(self.file_path, 'r') as f:
return json.load(f)
except FileNotFoundError:
return {}
def save_data(self):
with open(self.file_path, 'w') as f:
json.dump(self.data, f, indent=4)
def get(self, key):
return self.data.get(key)
def set(self, key, value):
self.data[key] = value
self.save_data()
def delete(self, key):
if key in self.data:
del self.data[key]
self.save_data()
上述示例中,DataStorage类用于存储数据,它包含以下方法:
init(self, file_path):初始化数据存储类,指定数据文件路径,同时从文件中读取数据并存储到内存中。
load_data(self):从数据文件中读取数据。
save_data(self):将内存中的数据保存到数据文件中。
get(self, key):根据键获取对应的值。
set(self, key, value):设置键值对,将其存储到内存中,并将其保存到数据文件中。
delete(self, key):根据键删除对应的键值对,同时将其从内存中删除,并将其保存到数据文件中。
可以使用以下方式创建一个DataStorage类的实例,并使用其方法来存储、读取和删除数据:
data_storage = DataStorage('data.json')
# 设置键值对
data_storage.set('name', 'Alice')
# 获取值
name = data_storage.get('name')
print(name) # 输出: Alice
# 删除键值对
data_storage.delete('name')