本地建立一个小小的存储文件

我们经常做过一个业务,就要记录一些数据,我这里分享一下自己常用的一段小程序:

# coding=utf-8

import os
import pandas as pd

class ExcelBook:
    """ Access & Store data in excel """
    def __init__(self, book='/Users/linping/Seafile/linping/lic/address.xlsx'):
        self.book = book
        if not os.path.exists(book):
            print('--------------%s 文件不存在--------------' % book)
            self.df = pd.DataFrame()
            self.save()
        else:
            self.df = pd.read_excel(book)

    def save(self):
        self.df.to_excel(self.book)

    def add(self, dic, key=None):
        if key is not None:
            pass
        df = pd.DataFrame([dic.values()], columns=dic.keys())
        self.df = self.df.append(df)
        self.save()

    def find(self, dic):
        return self.df[(self.df[list(dic)] == pd.Series(dic)).all(axis=1)]

if __name__ == "__main__":
    book = ExcelBook('db_test.xlsx')
    test_dic = {'姓名': 'test', '年龄': 22}
    book.add(test_dic)

可以看到,下面 main 里面,我们创建了一个数据存储文件,并把一个字典保存到文件,保存结果如下:
本地建立一个小小的存储文件
添加记录不会查重,也不检查字段是否一致。
可以用book.find(test_dic)来查找记录,会返回找到的表格数据,如果len(book.find(test_dic))==0,那就是没找到
这个小小存储文件可以反复使用,多次记录运行结果,只要在流程开始初始化,后续反复使用 add 和 find 方法即可
如果喜欢,你可以添加自己的方法来扩展这个最简单的数据库。