python操作Redis学习笔记之List的基本操作

基本操作

import redis
#db =6 表示链接到index =6的数据库,decode_responses = True,放入数据库的value是str类型
pool = redis.ConnectionPool(host = 'localhost',port = 6379, db = 6,password = None,decode_responses = True)
r =  redis.StrictRedis(connection_pool = pool)

#从左边插入,没有就新建
r.lpush('example',1,2,3)
r.lpush('example1',1,2,3)
r.lpush('example2',1,2,3)
#第二个参数是开始位置,第三个参数是结束位置,因此可以切片操作
print(r.lrange('example',0,-1))

#得到list的长度
print(r.llen('example'))

#从右边插入,切片操作
r.rpush('example',4,5,6)
print(r.lrange('example',0,5))

#从左边插入元素,如果list不存在,则无法创建
r.lpushx('new_example1',10)
print(r.lrange('new_example1',0,-1))

#从右边插入元素,如果list不存在,则无法创建
r.rpushx('new_example1',10)
print(r.lrange('new_example1',0,-1))

#删除最左边的元素并返回
r.lpop('example')
print(r.lpop('example'))

#删除最右边的元素并返回
print(r.rpop('example'))

#删除索引之外的所有数据
r.ltrim('example',0,3)
print(r.lrange('example',0,-1))

#根据索引取值
print(r.lindex('example',2))

#将第一个list的最右边的元素取出来放到第二个list的最左边
r.rpoplpush('example1','example2')

#将第一个list的最左边的元素取出来放到第二个list的最右边
r.brpoplpush('example1','example2')

#移除读个列表的元素,注意参数是列表,可设置超时
r.blpop(['example','example2'],timeout = 10)

在name对应的list中删除指定的值
r.lrem(name, value, num)

参数 含义
name redis的name
value 要删除的值
num num=0,删除列表中所有的指定值
num=2从前到后,删除2个
num=1,从前到后,删除左边第1个
num=-2,从后向前,删除2个
r.lrem('example','10',1)
print(r.lrange('example',0,-1))

在某个值的前后插入元素
linsert(name, where, refvalue, value))

参数 含义
name redis的name
where BEFORE或AFTER
refvalue 标杆值,即:在它前后插入数据
value 要插入的数据
r.linsert('example','after','10','mghmgh')
print(r.lrange('example',0,-1))

你可能感兴趣的:(python操作Redis学习笔记之List的基本操作)