• python 操作 redis


    import redis
    
    # # redis 取出的结果默认是字节,我们可以设定 decode_responses=True 改成字符串。
    # r = redis.StrictRedis(host='localhost', port=6379, db=0,decode_responses=True)
    
    # # 写入数据
    # r.set('foo', 'bar')
    
    # # 获取数据
    # r.get('foo')
    
    
    
    # # connection pool 来管理对一个 redis server 的所有连接,避免每次建立、释放连接的开销。
    # pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
    # r = redis.Redis(host='localhost', port=6379, decode_responses=True)  
    # r.set('name', 'runoob')  # 设置 name 对应的值
    # print(r.get('name'))  # 取出键 name 对应的值
    
    
    
    
    # pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
    # r = redis.Redis(connection_pool=pool)
    
    
    # # ex - 过期时间(秒)
    # r.set('food', 'mutton', ex=10)    # key是"food" value是"mutton" 将键值对存入redis缓存
    # print(r.get('food'))    # mutton 取出键food对应的值
    
    
    # # px - 过期时间(毫秒)
    # r.set('food', 'beef', px=30000)
    # print(r.get('food'))
    # print(r.set('food',123))
    
    
    # # nx - 如果设置为True,则只有name不存在时,当前set操作才执行--如果设置为True,则只有name存在时,当前set操作才执行 (修改)
    # pool = redis.ConnectionPool(host='localhost', port=6379, decode_responses=True)
    # r = redis.Redis(connection_pool=pool)
    # print(r.set('fruit', 'watermelon11', nx=True))  
    
    # # 设置值,只有name不存在时,执行设置操作(添加)
    # print(r.setnx('fruit1', 'banana'))  # fruit1不存在,输出为True
    
    
    
    
    # ------批量设置
    # # redis 取出的结果默认是字节,我们可以设定 decode_responses=True 改成字符串。
    # r = redis.StrictRedis(host='localhost', port=6379, db=0,decode_responses=True)
    
    # # 一次写入多个数据
    # r.mset({'k1':'v1','k2':'v2'})
    
    # # 一次获取多个值
    # print(r.mget("k1", "k2"))
    # print(r.mget(['k1', 'k2']))
    
    
    # --------高级api
    
    r = redis.StrictRedis(host='localhost', port=6379, db=0,decode_responses=True)
    # # 设置新值并获取原来的值
    # print(r.getset("food", "barbecue4"))
    
    # # 截取值输出
    # print(r.getrange("food", 0, 2)) 
    
    # # 返回name对应值的字节长度(一个汉字3个字节)
    # print(r.strlen("food")) 
    
    
    # -------应该场景
    # 应用场景 – 页面点击数
    r.set("visit:12306:totals", 1)   ##当redis服务器启动时,可以从关系数据库读入点击数的初始值
    print(r.get("visit:12306:totals"))
    r.incr("visit:12306:totals")      ##每当有一个页面点击,则使用INCR增加点击数即可。     步长可用 r.incr("visit:12306:totals",2) 每次调用+2
    r.incr("visit:12306:totals")
    print(r.get("visit:12306:totals"))   ##页面载入的时候则可直接获取这个值

    参考:  https://www.runoob.com/w3cnote/python-redis-intro.html

    :号 展示文件分割

    r.set("a:b:c",1)

  • 相关阅读:
    一句sql语句删除重复记录
    Remoting测试
    关于委托
    遍历打印文件夹中的word文档
    c# string类型的一个理解误区
    viewstate
    依赖注入与工厂模式Demo
    memcache配置实践
    201732 C#链接数据库实现登陆
    观察者设计模式[伪]
  • 原文地址:https://www.cnblogs.com/kaibindirver/p/15818884.html
Copyright © 2020-2023  润新知