1. 程式人生 > >Redis與Python進行交互

Redis與Python進行交互

align 增加 github init 目錄 cep 命令 core 對象

安裝包

安裝Redis的有3種方式https://github.com/andymccurdy/redis-py

  • 第一種:進?虛擬環境,聯?安裝包redis

    pip install redis

  • 第二種:進?虛擬環境,聯?安裝包redis

    easy_install redis

  • 第三種:到中?官?-客戶端下載redis包的源碼,使?源碼安裝

    一步步執行 wget https://github.com/andymccurdy/redis-py/archive/master.zip
    unzip master.zip
    cd redis-py-master
    sudo python setup.py install

調?模塊

  • 引?模塊

    from redis import *

  • 這個模塊中提供了StrictRedis對象(Strict嚴格),?於連接redis服務器,並按照不同類型提供 了不同?法,進?交互操作

StrictRedis對象?法

  • 通過init創建對象,指定參數host、port與指定的服務器和端?連接,host默認為localhost,port默認為6379,db默認為0
sr = StrictRedis(host=‘localhost‘, port=6379, db=0)

簡寫
sr=StrictRedis()
  • 根據不同的類型,擁有不同的實例?法可以調?,與前?學的redis命令對應,?法需要的參數與命令的參數?致

string

  • set
  • setex
  • mset
  • append
  • get
  • mget
  • key

keys

  • exists
  • type
  • delete
  • expire
  • getrange
  • ttl

hash

  • hset
  • hmset
  • hkeys
  • hget
  • hmget
  • hvals
  • hdel

list

  • lpush
  • rpush
  • linsert
  • lrange
  • lset
  • lrem

set

  • sadd
  • smembers
  • srem

zset

  • zadd
  • zrange
  • zrangebyscore
  • zscore
  • zrem
  • zremrangebyscore

準備

  • 在桌面上創建redis目錄
  • 使用pycharm打開 redis目錄
  • 創建redis_string.py文件
from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()

    except Exception as e:
        print(e)

string-增加

  • ?法set,添加鍵、值,如果添加成功則返回True,如果添加失敗則返回False
  • 編寫代碼如下
from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()
        #添加鍵name,值為skylark
        result=sr.set(‘name‘,‘skylark‘)
        #輸出響應結果,如果添加成功則返回True,否則返回False
        print(result)
    except Exception as e:
        print(e)

string-獲取

  • ?法get,添加鍵對應的值,如果鍵存在則返回對應的值,如果鍵不存在則返回None
  • 編寫代碼如下
from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()
        #獲取鍵name的值
        result = sr.get(‘name‘)
        #輸出鍵的值,如果鍵不存在則返回None
        print(result)
    except Exception as e:
        print(e)

string-修改

  • ?法set,如果鍵已經存在則進?修改,如果鍵不存在則進?添加

編寫代碼如下

from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()
        #設置鍵name的值,如果鍵已經存在則進?修改,如果鍵不存在則進?添加
        result = sr.set(‘name‘,‘skylark‘)
        #輸出響應結果,如果操作成功則返回True,否則返回False
        print(result)
    except Exception as e:
        print(e)

string-刪除

  • ?法delete,刪除鍵及對應的值,如果刪除成功則返回受影響的鍵數,否則則返 回0
  • 編寫代碼如下
from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()
        #設置鍵name的值,如果鍵已經存在則進?修改,如果鍵不存在則進?添加
        result = sr.delete(‘name‘)
        #輸出響應結果,如果刪除成功則返回受影響的鍵數,否則則返回0
        print(result)
    except Exception as e:
        print(e) 

獲取鍵

  • ?法keys,根據正則表達式獲取鍵
  • 編寫代碼如下
from redis import *
if __name__=="__main__":
    try:
        #創建StrictRedis對象,與redis服務器建?連接
        sr=StrictRedis()
        #獲取所有的鍵
        result=sr.keys()
        #輸出響應結果,所有的鍵構成?個列表,如果沒有鍵則返回空列表
        print(result)
    except Exception as e:
        print(e)

現在就可以盡情的開始使用Redis了

Redis與Python進行交互