redis数据库

redis数据库

Redis 是一个基于内存的高效的键值型非关系型数据库,存储效率极高,而且支持多种存储数据结构,使用也非常简单。
redis-py库提供了两个类Redis和StrictRedis来实现Redis的命令操作

from redis import StrictRedis,ConnectionPool

## 连接数据库
#方法一
#redis = StrictRedis(host="127.0.0.1",port=6379,db=0,password='wln1226')
#方法二
pool = ConnectionPool(host="127.0.0.1",port=6379,db=0,password='wln1226')
redis = StrictRedis(connection_pool=pool)
#调用set()方法给数据库中键为name的赋值
redis.set('name','Lina')
#调用get()方法读取数据中键为name的值
print(redis.get('name'))
redis.set('age',20)
redis.set('gender','female')
redis.set('nickname','favorite girl')

## 键的操作
#判断一个键是否存在
print(redis.exists('name'))
#删除一个键
redis.delete('age')
#判断一个键的类型
print(redis.type('name'))
#获取所有符合规则的键
result = redis.keys('n*')
print(result)
#获取随机一个键
result = redis.randomkey()
print(result)
#重命名键
result = redis.rename('gender','sex')
print(result)
#获取当前数据库中键的数目
result = redis.dbsize()
print(result)
#设定键的过期时间,单位为两秒
result = redis.expire('name',10)
print(result)
#获取键的过期时间,单位为秒,-1,表示永不过期
result = redis.ttl('name')
print(result)
#将键移动到其他数据库
result = redis.move('name',1)
print(result)
#删除当前所选择数据库中的所有键
result = redis.flushdb()
print(result)
#删除所有数据库中的键
result = redis.flushall()
print(result)

## 字符串操作
#给键赋值
redis.set('name','fz')
#读取键的值
result = redis.get('name')
print(result)
#给键赋值并返回该键上一次的值
result = redis.getset('name','Me')
print(result)
#返回多个键对应的值
result = redis.mget(['name','nickname'])
print(result)
#如果不存在这个键值对,则更新值,否则不变
result = redis.setnx('lastname','zhao')
print(result)
#设置可以对应的值为string类型的值,并指定该键值对应的有效期
result = redis.setex('name',10,'mike')
print(result)
#设置指定键的value值的子字符串
result = redis.setrange('name',4,'love')
print(result)
#批量赋值
result = redis.mset({'name1':'james','name2':'Durant'})
print(result)
#键均不存在时才批量赋值
result = redis.msetnx({'name3':'Curry','name4':'Thomson'})
print(result)
#增量操作,默认为自增1,键不存在则被创建并赋值
result = redis.incr('age',1)
print(result)
#减量操作,默认为自减1,键不存在则被创建并赋值
result = redis.decr('age',1)
print(result)
#给键的字符串附件值
result = redis.append('name','OK')
print(result)
#返回键的字符串的子串
result = redis.substr('name',1,4)
print(result)
#返回键的字符串的子串
result = redis.getrange('name',1,4)
print(result)

你可能感兴趣的:(python)