• 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

  • 相关阅读:
    jenkins, docker-composer
    php pass-by-reference deprecated &$-->$
    showslow / YSlow for PhantomJS/slimerjs(gecko)/phantomas
    FW qunit introduction
    FW: AMD, CMD, CommonJS和UMD
    nodejs unit test related----faker-cli, sinonjs, mock/stub
    cs api测试
    CloudStack 4.3功能前瞻
    devcloud
    DevCloud for CloudStack Development
  • 原文地址:https://www.cnblogs.com/huaizhi/p/8421419.html
Copyright © 2020-2023  润新知