@Kirscheis 需要完整存取用 json.dump 是没问题的 但我想要随机存取单个的值, 不想每次都完整 dump,load 这也是很正常的需求 至于 redis, 我如果开发一个单机软件, 我也不能指望客户端用户自己部署一个 redis 把, 就算可以弄个自动安装的, 也没必要
很多人说 sqlite 我认为 sqlite 是很好, 不用安装, 单文件存储, 性能过得去 但是, 我不喜欢 sql 我认为正常情况下, 用名字-值这样的方式存储数据是最自然的, 本来数据在程序中就是有名字的, 直接用名字存储最自然, 就算是大量数据, 正常情况下也是有自然 key 的, 比如用户的 email,或者手机号, 都可以用来唯一索引, 都可以天然对应 kv 存储
可以弄个 class ,然后__getattr__, __setattr__,__dict__,把 sql 的增删改查写进去,反正位置也固定、sql 语句也固定,无非就是 select 和 insert or replace ,写死了,外部就根本不用理会 实例化这个 class ,直接 obj.abc+obj.cba 就是了 我封装了一大堆函数,然后 ipython 启动时自动 import ,现在 ipython 几乎都可以当 shell 用了