轻量级键值数据库pickleDB

用于替代Redis的轻量级数据库。 支持持久化、存储为JSON格式、纯 Python 实现。

一、官网

https://github.com/patx/pickledbicon-default.png?t=O83Ahttps://github.com/patx/pickledb二、文档

pickleDB - simple key-value databaseicon-default.png?t=O83Ahttps://patx.github.io/pickledb/三、安装

pip install pickledb

四、使用

import pickledb

if __name__ == '__main__':
    # 创建或加载数据库,auto_dump=True 表示在每次修改数据时自动持久化到文件。
    db = pickledb.load('example.json', auto_dump=True)
    # 手动触发持久化
    db.dump()
    # 设置数据
    db.set('username', '张三丰')
    # 获取数据
    value = db.get('username')
    # 获取所有键
    keys: list = db.getall()
    # 检查键是否存在
    exists = db.exists('password')
    if exists:
        # 删除键值对
        db.rem('password')
    # 获取数据库键的数量
    total_count = db.totalkeys()
    # 清空数据库
    db.deldb()
    """---------------------------list-----------------------------"""
    # 存储列表
    db.set('fruits', ['apple', 'banana'])
    # 向列表追加列表
    db.append('fruits', ['cherry'])
    # 创建key为friends的空列表
    db.lcreate("friends")
    # 向列表添加元素
    db.ladd("friends", "lucy")
    # 向列表中插入元素
    db.lextend("friends", ['bob', 'charlie'])
    # 获取列表元素
    friends = db.lgetall('friends')
    # 获取列表中的一个元素
    friend = db.lget('friends', 1)
    # 删除列表中的指定元素
    db.lremvalue('friends', 'bob')
    db.lpop('friends', 0)
    # 删除列表及其所有元素
    # db.lremlist('friends')
    # 获取列表长度
    db.llen('friends')
    # 对列表中的元素进行追加操作,字符串则+=,列表则+=
    db.lappend('friends', 0, 'dave')
    # 判断列表中是否存在某个值
    db.lexists('friends', 'lily')
    """----------------------------dict----------------------------"""
    # 创建key为user的空字典
    db.dcreate('user')
    # 添加一个键值对到字典中
    db.dadd('user', ('name', 'Alice'))
    # 获取字典中的某个键数据
    db.dget('user', 'name')
    # 获取字典中所有的键值对
    db.dgetall('user')
    # 删除字典及其所有元素
    db.drem('user')
    # 删除字典中的某个键
    db.dpop('user', 'name')
    # 获取字典中的所有键
    db.dkeys('user')
    # 获取字典中的所有值
    db.dvals('user')
    # 判断字典中是否存在某个键
    db.dexists('user', 'name')
    # 合并存储两个字典到user1
    db.dmerge('user1', 'user2')
    # 存储字典
    db.set('user', {'name': 'Alice', 'age': 30, 'email': 'alice@example.com'})

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

文子阳

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值