zoukankan      html  css  js  c++  java
  • python之redis

    安装

    注意:redis3.0以上部分哈希类型存不进去!

    pip install redis==2.10.6

    连接操作命令

    • quit:关闭连接(connection)

    • auth:简单密码认证

    • help cmd: 查看cmd帮助,例如:help quit

    持久化

    • save:将数据同步保存到磁盘

    • bgsave:将数据异步保存到磁盘

    • lastsave:返回上次成功将数据保存到磁盘的Unix时戳

    • shundown:将数据同步保存到磁盘,然后关闭服务

    远程服务控制

    • info:提供服务器的信息和统计

    • monitor:实时转储收到的请求

    • slaveof:改变复制策略设置

    • config:在运行时配置Redis服务器

    Key命令

    1. exists(key):检查给定 key 是否存在。

    2. del(key):删除一个key

    3. type(key):返回值的类型

    4. keys(pattern):返回满足给定pattern的所有key

    5. randomkey:随机返回key空间的一个

    6. keyrename(oldname, newname):重命名key

    7. dbsize:返回当前数据库中key的数目

    8. expire:设定一个key的活动时间(s)

    9. ttl:获得一个key的活动时间

    10. select(index):按索引查询

    11. move(key, dbindex):移动当前数据库中的key到dbindex数据库

    12. flushdb:删除当前选择数据库中的所有key

    13. flushall:删除所有数据库中的所有key

    String

    1. set(key, value):给数据库中名称为key的string赋予值value

    2. get(key):返回数据库中名称为key的string的value

    3. getset(key, value):给名称为key的string赋予上一次的value

    4. mget(key1, key2,…, key N):返回库中多个string的value

    5. setnx(key, value):添加string,名称为key,值为value

    6. setex(key, time, value):向库中添加string,设定过期时间time

    7. mset(key N, value N):批量设置多个string的值

    8. msetnx(key N, value N):如果所有名称为key i的string都不存在

    9. incr(key):名称为key的string增1操作

    10. incrby(key, integer):名称为key的string增加integer

    11. decr(key):名称为key的string减1操作

    12. decrby(key, integer):名称为key的string减少integer

    13. append(key, value):名称为key的string的值附加value

    14. substr(key, start, end):返回名称为key的string的value的子串

    List

    Redis的list类型其实就是一个每个子元素都是string类型的双向链表,链表的最大长度是2^32。list既可以用做栈,也可以用做队列。

    1. rpush(key, value):在名称为key的list尾添加一个值为value的元素
    2. lpush(key, value):在名称为key的list头添加一个值为value的 元素
    3. llen(key):返回名称为key的list的长度
    4. lrange(key, start, end):返回名称为key的list中start至end之间的元素
    5. ltrim(key, start, end):截取名称为key的list
    6. lindex(key, index):返回名称为key的list中index位置的元素
    7. lset(key, index, value):给名称为key的list中index位置的元素赋值
    8. lrem(key, count, value):删除count个key的list中值为value的元素
    9. lpop(key):返回并删除名称为key的list中的首元素
    10. rpop(key):返回并删除名称为key的list中的尾元素
    11. blpop(key1, key2,… key N, timeout):lpop命令的block版本。
    12. brpop(key1, key2,… key N, timeout):rpop的block版本。
    13. rpoplpush(srckey, dstkey):返回并删除名称为srckey的list的尾元素,并将该元素添加到名称为dstkey的list的头部

    Set

    特点:无序性、确定性、唯一性

    1. sadd(key, member):向名称为key的set中添加元素member
    2. srem(key, member) :删除名称为key的set中的元素member
    3. spop(key) :随机返回并删除名称为key的set中一个元素
    4. smove(srckey, dstkey, member) :移到集合元素
    5. scard(key) :返回名称为key的set的基数
    6. sismember(key, member) :member是否是名称为key的set的元素
    7. sinter(key1, key2,…key N) :求交集
    8. sinterstore(dstkey, (keys)) :求交集并将交集保存到dstkey的集合
    9. sunion(key1, (keys)) :求并集
    10. sunionstore(dstkey, (keys)) :求并集并将并集保存到dstkey的集合
    11. sdiff(key1, (keys)) :求差集
    12. sdiffstore(dstkey, (keys)) :求差集并将差集保存到dstkey的集合
    13. smembers(key) :返回名称为key的set的所有元素
    14. srandmember(key) :随机返回名称为key的set的一个元素

    Hash

    Redis hash 是一个string类型的field和value的映射表,它的添加、删除操作都是O(1)(平均)。hash特别适用于存储对象,将一个对象存储在hash类型中会占用更少的内存,并且可以方便的存取整个对象。

    1. hset(key, field, value):向名称为key的hash中添加元素field
    2. hget(key, field):返回名称为key的hash中field对应的value
    3. hmget(key, (fields)):返回名称为key的hash中field i对应的value
    4. hmset(key, (fields)):向名称为key的hash中添加元素field
    5. hincrby(key, field, integer):将名称为key的hash中field的value增加integer
    6. hexists(key, field):名称为key的hash中是否存在键为field的域
    7. hdel(key, field):删除名称为key的hash中键为field的域
    8. hlen(key):返回名称为key的hash中元素个数
    9. hkeys(key):返回名称为key的hash中所有键
    10. hvals(key):返回名称为key的hash中所有键对应的value
    11. hgetall(key):返回名称为key的hash中所有的键(field)及其对应的value

    Zest(有序集合)

    概念:它是在set的基础上增加了一个顺序属性,这一属性在添加修改元素的时候可以指定,每次指定后,zset会自动按新的值调整顺序。可以理解为有两列的mysql表,一列存储value,一列存储顺序,操作中key理解为zset的名字。

    1. zadd key score1 value1:添加元素
    2. zrange key start stop [withscore]:把集合排序后,返回名次[start,stop]的元素 默认是升续排列 withscores 是把score也打印出来
    3. zrank key member:查询member的排名(升序0名开始)
    4. zrevrank key member:查询member排名(降序 0名开始)
    5. zrem key value1 value2:删除集合中的元素
    6. zremrangebyrank key start end:按排名删除元素,删除名次在[start, end]之间的
    7. zcard key:返回集合元素的个数
    8. zcount key min max:返回[min, max]区间内元素数量

    参考链接:[link]https://www.jb51.net/article/61793.htm

    幻想毫无价值,计划渺如尘埃,目标不可能达到。这一切的一切毫无意义——除非我们付诸行动。
  • 相关阅读:
    eclipse开发首选项
    html中怎么跨域访问
    如何自定义标签
    eclipse开发首选项
    eclipse开发一个文件向导
    eclipse开发一个文件向导
    JavaScript 操作IE菜单
    html中怎么跨域访问
    如何在没有安装 Python 的机器上运行 Python 程序
    Openstack Keystone V3 利用 curl 命令获取 token
  • 原文地址:https://www.cnblogs.com/TodayWind/p/14006326.html
Copyright © 2011-2022 走看看