python操作redis

1.本地环境安装redis

2.安装redis模块 pip install redis

3.python操作redis实例

1)连接redis

普通连接

import redis

r = redis.Redis(host='127.0.0.1', port=6379)
# r = redis.StrictRedis(host='0.0.0.0', port=6379)

r.set('playerkey', 'James')
print(r.get('playerkey'))

输出结果: b'James'

连接池

import redis

pool = redis.ConnectionPool(host='127.0.0.1', port=6379)
r = redis.Redis(connection_pool=pool)

r.set('playerkey', 'James')
print(r.get('playerkey'))

# 输出结果: b'James'

2)String字符串

r.set 设置值

#在Redis中设置值,默认不存在则创建,存在则修改
r.set('name', 'zhangsan')
'''参数:
  set(name, value, ex=None, px=None, nx=False, xx=False)
  ex,过期时间(秒)
  px,过期时间(毫秒)
  nx,如果设置为True,则只有name不存在时,当前set操作才执行,同setnx(name, value)
  xx,如果设置为True,则只有name存在时,当前set操作才执行'''

mset 批量设置值

#批量设置值
r.mset(name1='zhangsan', name2='lisi')
#
r.mget({"name1":'zhangsan', "name2":'lisi'})

mget(keys, *args) 批量获取

#批量获取
print(r.mget("name1","name2"))
#
li=["name1","name2"]
print(r.mget(li))

getset 设置新值,打印原值

#设置新值,打印原值
getset(name, value) 
 
print(r.getset("name1","wangwu")) #输出:zhangsan
print(r.get("name1")) #输出:wangwu

getrange 根据字节获取子序列

#根据字节获取子序列
getrange(key, start, end) 
 
r.set("name","zhangsan")
print(r.getrange("name",0,3))#输出:zhan

setrange 修改字符串内容,从指定字符串索引开始向后替换,如果新值太长时,则向后添加

#修改字符串内容,从指定字符串索引开始向后替换,如果新值太长时,则向后添加
setrange(name, offset, value) 
 
r.set("name","zhangsan")
r.setrange("name",1,"z")
print(r.get("name")) #输出:zzangsan
r.setrange("name",6,"zzzzzzz")
print(r.get("name")) #输出:zzangszzzzzzz

strlen(name) 返回name对应值的字节长度

#返回name对应值的字节长度(一个汉字3个字节)
r.set("name","zhangsan")
print(r.strlen("name")) #输出:8

 incr 值的累加 amount为累加的值

#自增mount对应的值,当mount不存在时,则创建mount=amount,否则,则自增,amount为自增数(整数)
incr(self, name, amount=1) 
 
print(r.incr("mount",amount=2))#输出:2
print(r.incr("mount"))#输出:3
print(r.incr("mount",amount=3))#输出:6
print(r.incr("mount",amount=6))#输出:12
print(r.get("mount")) #输出:12

append 在name对应的值后面追加内容

#在name对应的值后面追加内容
append(name, value)
 
r.set("name","zhangsan")
print(r.get("name"))  #输出:'zhangsan
r.append("name","lisi")
print(r.get("name"))  #输出:zhangsanlisi

2)Hash 操作

原文地址:https://www.cnblogs.com/m-chen/p/10077848.html