Redis五种数据类型,底层存储数据结构,以及相关命令
Redis支持五种数据类型:字符串(String),列表(List),集合(Set),有序集合(Sorted Set),哈希(Hash)。
字符串(String):
底层实现是动态字符串(Simple Dynamic String, SDS)。
常用命令:SET, GET, INCR, DECR, MSET, MGET等。
列表(List):
底层实现是双向链表。
常用命令:LPUSH, RPUSH, LPOP, RPOP, LRANGE等。
集合(Set):
底层实现是哈希表。
常用命令:SADD, SMEMBERS, SISMEMBER, SREM等。
有序集合(Sorted Set):
底层实现是跳跃列表。
常用命令:ZADD, ZRANGE, ZREVRANGE, ZREM等。
哈希(Hash):
底层实现是哈希表。
常用命令:HSET, HGET, HGETALL, HDEL等。
以下是对应命令的示例代码:
# 字符串
redis.set('key', 'value')
print(redis.get('key'))
redis.incr('key')
redis.decr('key')
redis.mset({'key1': 'value1', 'key2': 'value2'})
print(redis.mget('key1', 'key2'))
# 列表
redis.lpush('list', 'value1')
redis.rpush('list', 'value2')
print(redis.lpop('list'))
print(redis.rpop('list'))
print(redis.lrange('list', 0, -1))
# 集合
redis.sadd('set', 'value1')
redis.sadd('set', 'value2')
print(redis.smembers('set'))
print(redis.sismember('set', 'value1'))
redis.srem('set', 'value1')
# 有序集合
redis.zadd('zset', {'value1': 1, 'value2': 2})
print(redis.zrange('zset', 0, -1))
print(redis.zrevrange('zset', 0, -1))
redis.zrem('zset', 'value1')
# 哈希
redis.hset('hash', 'field1', 'value1')
print(redis.hget('hash', 'field1'))
print(redis.hgetall('hash'))
redis.hdel('hash', 'field1')
以上代码假设你已经有了一个Redis客户端实例redis
。
评论已关闭