List操作,redis中的List在在内存中按照一个name对应一个List来存储

lpush(name,values)    --> 实际上是左添加
# 在name对应的list中添加元素,每个新的元素都添加到列表的最左边  # 如:     # r.lpush('oo', 11,22,33)     # 保存顺序为: 33,22,11  # 扩展:
# rpush(name, values) 表示从右向左操作

--------------------------------------------------------------------------------------------------------------------------------------

lpushx(name,value)    --> 存在则添加元素到列表
# 更多:     # rpushx(name, value) 表示从右向左操作

--------------------------------------------------------------------------------------------------------------------------------------

llen(name)   --> 查看list元素的个数

--------------------------------------------------------------------------------------------------------------------------------------

linsert(name, where, refvalue, value)) -->某元素前/后添加另一元素
# 在name对应的列表的某一个值前或后插入一个新值  # 参数:     # name,redis的name     # where,BEFORE或AFTER     # refvalue,标杆值,即:在它前后插入数据     # value,要插入的数据

--------------------------------------------------------------------------------------------------------------------------------------

r.lset(name, index, value)  --> 重新赋值/update操作
# 对name对应的list中的某一个索引位置重新赋值   # 参数:     # name,redis的name     # index,list的索引位置
# value,要设置的值

--------------------------------------------------------------------------------------------------------------------------------------

r.lrem(name, value, num)     --在name对应的list中删除指定的值
# 参数:     # name,redis的name     # value,要删除的值     # num,  num=0,删除列表中所有的指定值;          num=2,从前到后,删除2个;          num=-2,从后向前,删除2个

--------------------------------------------------------------------------------------------------------------------------------------

lpop(name)   -->列表的左侧获取第一个元素并在列表中移除,返回值是第一个元素
# 更多:     # rpop(name) 表示从右向左操作

lindex(name, index)  -->在name对应的列表中根据索引获取列表元素

lrange(name, start, end)  -->在name对应的列表分片获取数据
# 参数:     # name,redis的name     # start,索引的起始位置
# end,索引结束位置

--------------------------------------------------------------------------------------------------------------------------------------

ltrim(name, start, end)
# 在name对应的列表中移除没有在start-end索引之间的值
# 参数:     # name,redis的name     # start,索引的起始位置     # end,索引结束位置

--------------------------------------------------------------------------------------------------------------------------------------

rpoplpush(src, dst)
# 从一个列表取出最右边的元素,同时将其添加至另一个列表的最左边
# 参数:     # src,要取数据的列表的name     # dst,要添加数据的列表的name

--------------------------------------------------------------------------------------------------------------------------------------

blpop(keys, timeout)
# 将多个列表排列,按照从左到右去pop对应列表的元素  # 参数:     # keys,redis的name的集合     # timeout,超时时间,当元素所有列表的元素获取完之后,阻塞等待列表内有数据的时间(秒), 0 表示永远阻塞  # 更多:
# r.brpop(keys, timeout),从右向左获取数据

--------------------------------------------------------------------------------------------------------------------------------------

brpoplpush(src, dst, timeout=0)
# 从一个列表的右侧移除一个元素并将其添加到另一个列表的左侧  # 参数:     # src,取出并要移除元素的列表对应的name     # dst,要插入元素的列表对应的name     # timeout,当src对应的列表中没有数据时,阻塞等待其有数据的超时时间(秒),0 表示永远阻塞

Redis学习---Redis操作之List的更多相关文章

  1. Redis学习---Redis操作之Python连接

    PyCharm下的Redis连接 连接方式: 1. 操作模式 redis-py提供两个类Redis和StrictRedis用于实现Redis的命令,StrictRedis用于实现大部分官方的命令,并使 ...

  2. Redis学习——Redis持久化之AOF备份方式保存数据

    新技术的出现一定是在老技术的基础之上,并且完善了老技术的某一些不足的地方,新技术和老技术就如同JAVA中的继承关系.子类(新技术)比父类(老技术)更加的强大! 在前面介绍了Redis学习--Redis ...

  3. Redis学习——Redis事务

    Redis和传统的关系型数据库一样,因为具有持久化的功能,所以也有事务的功能! 有关事务相关的概念和介绍,这里就不做介绍. 在学习Redis的事务之前,首先抛出一个面试的问题. 面试官:请问Redis ...

  4. Redis学习——Redis持久化之RDB备份方式保存数据

    从这一个介绍里面知道,redis比memcache作为缓存数据库强大的地方,一个是支持的数据类型比较多,另一个就是redis持久化功能. 下面就介绍Redis的持久化之RDB! 一:什么是redis的 ...

  5. [转]Redis学习---Redis高可用技术解决方案总结

    [原文]https://www.toutiao.com/i6591646189714670093/ 本文主要针对Redis常见的几种使用方式及其优缺点展开分析. 一.常见使用方式 Redis的几种常见 ...

  6. 尚硅谷redis学习11-jedis操作redis

    前面学习了redis的知识后,下面学习一下如何在java中通过jedis操作redis. 所需jar包:commons-pool-xxxx.jar,jedis-xxx.jar 下面看一下常用操作: 1 ...

  7. Redis学习---Redis的免密操作

    Redis的免密操作 问题解决[方式一]:当前这种linux配置redis密码的方法是一种临时的,如果redis重启之后密码就会失效 1.首先进入redis,如果没有开启redis则需要先开启: [r ...

  8. Redis学习---Redis操作之其他操作

    全局有效的其他操作 save 强制将内存/缓存中的key刷到硬盘上 ------------------------------------------------------------------ ...

  9. Redis学习---Redis操作之有序集合

    有序集合,在集合的基础上,为每元素排序:元素的排序需要根据另外一个值来进行比较,所以,对于有序集合,每一个元素有两个值,即:值和分数,分数专门用来做排序. zadd(name, *args, **kw ...

随机推荐

  1. 玩转mongodb(四):细说插入、更新、删除和查询

    插入: 使用insert或save方法想目标集合插入一个文档: db.person.insert({"name":"ryan","age": ...

  2. [Codeforces 993E]Nikita and Order Statistics

    Description 题库链接 给你一个长度为 \(n\) 的序列 \(A\) ,和一个数 \(x\) ,对于每个 \(i= 0\sim n\) ,求有多少个非空子区间满足恰好有 \(i\) 个数 ...

  3. office中把标题之后的空格去掉

    调整列表缩进--编号之后不特别标注可以把标题之后的空格去掉

  4. Android 操作Sqlite

    首先要用一个类来继承SQLiteOpenHelper,并必须实现 public DatabaseHelper(Context context, String name, CursorFactory f ...

  5. C#/Net代码精简优化技巧

    (一) 在我们写代码的时候可以使用一些小的技巧来使代码变得更加简洁,易于维护和高效.下面介绍几种在C#/Net中非常有用的一些编程技巧. 1 空操作符(??) 在程序中经常会遇到对字符串或是对象判断n ...

  6. jquery select change下拉框选项变化判断选中值

    <th class="formTitle"> 是否转出: </th> <td class="formValue" colspan= ...

  7. 【模板】Bellman—Fort 单源最短路径算法

    2333 适用于边集储存 #include<bits/stdc++.h> using namespace std; const int inf=0x3fffffff; ],t[],d[], ...

  8. Jprofiler注册码

    L-Larry_Lau@163.com#23874-hrwpdp1sh1wrn#0620 L-Larry_Lau@163.com#36573-fdkscp15axjj6#25257 L-Larry_L ...

  9. spring boot 报错 Failed to read HTTP message

    2008-12-13 15:06:03,930 WARN (DefaultHandlerExceptionResolver.java:384)- Failed to read HTTP message ...

  10. Go 语言实现 HTTP 层面的反向代理

    最近对 Go 语言的反向代理使用得偏多,其实在大概两年前就写过 TCP 层面的代理,而且那时也是用的 Go 语言,不同之处在于之前只是偶尔尝试一下使用,最近是因为工作需要使用的.相比较于 TCP 层面 ...