zoukankan      html  css  js  c++  java
  • python 对redis key的基本操作

    首先看一下Python 操作redis.StrictRedis 的初始化方法__init__

        def __init__(self, host='localhost', port=6379,
                     db=0, password=None, socket_timeout=None,
                     socket_connect_timeout=None,
                     socket_keepalive=None, socket_keepalive_options=None,
                     connection_pool=None, unix_socket_path=None,
                     encoding='utf-8', encoding_errors='strict',
                     charset=None, errors=None,
                     decode_responses=False, retry_on_timeout=False,
                     ssl=False, ssl_keyfile=None, ssl_certfile=None,
                     ssl_cert_reqs=None, ssl_ca_certs=None):

    最简单的情况的话;我们可以只提供ip和password就可以了,甚至还可以更少。默认端口是6379,默认连接数据库是0;

    # encoding:utf-8
    import redis
    import time
    
    
    def main():
        """
        redis-cli -h 127.0.0.1 -a test321
        """
        redis_host = "127.0.0.1"
        redis_password = "test321"
        redis_cli = redis.StrictRedis(host=redis_host, port=6379, db=0, password=redis_password)
        try:
            print redis_cli.flushdb() # 清空数据库
            print redis_cli.randomkey() # 随机获得一个key,如果数据库为空,返回nil
            print redis_cli.set("key1", "hello")
            print redis_cli.set("key2", "world")
            print redis_cli.randomkey()
            print redis_cli.keys("key*") # 获得当前数据库所有的“key*”
            print redis_cli.exists("key3") # 查看key是否存在
            print redis_cli.set("key3", 1)
            print redis_cli.type("key2") # 查看key对应的值类型
            print redis_cli.type("key3")
            print redis_cli.move("key3", 1) # 移动对应key(key3)到对应数据库(1)
            print redis_cli.select(1) #  切换到数据库(1)
            print redis_cli.exists("key3") # 查看key是否存在
            print redis_cli.get("key3")
            print redis_cli.delete("key3")
            print redis_cli.select(0) #  切换到数据库(0)
            print redis_cli.exists("key3") # 查看key是否存在
            print redis_cli.get("key2")
            print redis_cli.rename("key2", "key3") # 将key2重命名key3
            print redis_cli.get("key2")
            print redis_cli.get("key3")
            print redis_cli.rename("key1", "key3") # 尝试将key2重命名key3,若key3存在则失败
            print redis_cli.get("key1")
            print redis_cli.get("key3")
            print redis_cli.expire("key1", 100) # 设置key1键时效100秒
            print redis_cli.ttl("key1") # 查看key1时效
            print redis_cli.expire("key1", 10) # 重置key1键时效10秒
            print redis_cli.ttl("key1") # 查看key1时效
            print redis_cli.persist("key1") # 取消key1超时,设置为永久
            print redis_cli.ttl("key1") # 查看key1时效,持久键返回-1
    
            
        except Exception as e:
            print e.message
        finally:
            print redis_cli.flushdb()
            passif __name__ == "__main__":
        main()

     github:https://github.com/luohuaizhi/test/blob/master/testRedisBase.py

  • 相关阅读:
    把图片转换成二进制--把二进制转换成图片
    .NET 读取视频文件
    winform ListView创建columnHeader的方法
    VUE篇 3、this指向问题、双向数据绑定 、局部/全局组件、父子传值 、兄弟传值(平行组件传值)
    爬虫 5 scrapy框架 虎牙scrapy示例
    爬虫 空气质量爬取分析
    爬虫 4 selenium
    爬虫3 request3高级 代理操作、模拟登录、单线程+多任务异步协程
    爬虫2 数据解析 --图片 、bs4 、xpath 、l乱码的一个解决方法 “|”
    vue篇 2、简单的轮播图 ajax、简单的音乐播放器、计算属性computed
  • 原文地址:https://www.cnblogs.com/huaizhi/p/8421419.html
Copyright © 2011-2022 走看看