ubuntu安装Redis
sudo
vim
/etc/redis/redis
.conf
把bind 127.0.0.1这行注释掉
然后重启Redis
sudo
/etc/init
.d
/redis-server
restart
import redis r = redis.Redis(host='192.168.181.128', port=6379) r.set('foo', 'Bar') print(r.get('foo'))连接并操作
连接池
python操作redis,操作一次就请求一次连接,操作完成就断开连接,连接池把redis的连接请求放入池中,方便操作,避免每次建立、释放连接的开销
import redis pool = redis.ConnectionPool(host='192.168.181.128', port=6379) r = redis.Redis(connection_pool=pool) r.set('foo', 'Bar') print(r.get('foo'))连接池
set(name, value, ex=None, px=None, nx=False, xx=False)
1 2 3 4 5 6 |
在Redis中设置值,默认,不存在则创建,存在则修改
参数:
ex,过期时间(秒)
px,过期时间(毫秒)
nx,如果设置为True,则只有name不存在时,当前set操作才执行
xx,如果设置为True,则只有name存在时,岗前set操作才执行
|
setnx(name, value)
设置值,只有name不存在时,执行设置操作(添加)
setex(name,time ,value)
# time,过期时间(数字秒 或 timedelta对象)
psetex(name, time_ms, value)
# time_ms,过期时间(数字毫秒 或 timedelta对象)
mset(*args, **kwargs)#
mset(k1=
'v1'
, k2=
'v2'
)or
mget({
'k1'
:
'v1'
,
'k2'
:
'v2'
})
get(name)#获取值
mget(keys, *args)# mget('ylr', 'wupeiqi') or rmget([
'ylr'
,
'wupeiqi'
])
getset(name, value)#设置新值并获取原来的值
getrange(key, start, end) # name,Redis 的 name # start,起始位置(字节) # end,结束位置(字节)
setrange(name, offset, value)# 修改字符串内容,从指定字符串索引开始向后替换(新值太长时,则向后添加)
setbit(name, offset, value)# 获取name对应的值的二进制表示中的某位的值 (0或1)
bitcount(key, start=None, end=None)# 获取name对应的值的二进制表示中 1 的个数
strlen(name)# 返回name对应值的字节长度(一个汉字3个字节)
incr(self, name, amount=1)# 自增 name对应的值,当name不存在时,则创建name=amount,否则,则自增。
incrbyfloat(self, name, amount=1.0)# 自增 name对应的值,当name不存在时,则创建name=amount,否则,则自增。
decr(self, name, amount=1)# 自减 name对应的值,当name不存在时,则创建name=amount,否则,则自减。
append(key, value)# 在redis name对应的值后面追加内容