安装python-redis:
pip install redis
新建一个文件比如redis_test.py,然后初始化一个redis实例变量,并且在ubuntu虚拟机中开启redis。比如虚拟机的ip地址为192.168.174.130。示例代码如下:
# 从redis包中导入Redis类
fromredisimportRedis
# 初始化redis实例变量
xtredis = Redis(host='192.168.174.130',port=6379)
对字符串的操作:操作redis的方法名称,跟之前使用redis-cli一样,现就一些常用的来做个简单介绍,示例代码如下(承接以上的代码):
# 添加一个值进去,并且设置过期时间为60秒,如果不设置,则永远不会过期xtredis.set('username','xiaotuo',ex=60)
# 获取一个值xtredis.get('username')
# 删除一个值xtredis.delete('username')
# 给某个值自增1
xtredis.set('read_count',1)
xtredis.incr('read_count')# 这时候read_count变为2
# 给某个值减少1
xtredis.decr('read_count')# 这时候read_count变为1
对列表的操作:同字符串操作,所有方法的名称跟使用redis-cli操作是一样的:
# 给languages这个列表往左边添加一个
pythonxtredis.lpush('languages','python')# 给languages这个列表往左边添加一个phpxtredis.lpush('languages','php')# 给languages这个列表往左边添加一个javascriptxtredis.lpush('languages','javascript')
# 获取languages这个列表中的所有值
printxtredis.lrange('languages',0,-1)
对集合的操作:
# 给集合team添加一个元素
xiaotuoxtredis.sadd('team','xiaotuo')
# 给集合team添加一个元素
datuoxtredis.sadd('team','datuo')
# 给集合team添加一个元素
slicextredis.sadd('team','slice')
# 获取集合中的所有元素xtredis.smembers('team') # > ['datuo','xiaotuo','slice']# 无序的
对哈希(hash)的操作:
# 给website这个哈希中添加
baiduxtredis.hset('website','baidu','baidu.com')
# 给website这个哈希中添加
googlextredis.hset('website','google','google.com')
# 获取website这个哈希中的所有值
printxtredis.hgetall('website') # > {"baidu":"baidu.com","google":"google.com"}
事务(管道)操作:redis支持事务操作,也即一些操作只有统一完成,才能算完成。否则都执行失败,用python操作redis也是非常简单,示例代码如下:
# 定义一个管道实例
pip = xtredis.pipeline()
# 做第一步操作,给BankA自增长1
pip.incr('BankA')
# 做第二步操作,给BankB自减少1
pip.desc('BankB')
# 执行事务
pip.execute()
以上便展示了python-redis的一些常用方法,如果想深入了解其他的方法,可以参考python-redis的源代码(查看源代码pycharm快捷键提示:把鼠标光标放在import Redis的Redis上,然后按ctrl+b即可进入)。