python操作redis之String操作
阿新 • • 發佈:2018-01-03
lis class 選擇 錯誤 post range nihao name 定義
# __author__ = ‘STEVEN‘ import redis,time # 方式1,直接鏈接操作 # r = redis.Redis(host=‘192.168.43.22‘,port=6379) # r.set(‘name‘,‘lisi‘) # print(r.get(‘name‘).decode()) # 方式2,創建進程池 poll = redis.ConnectionPool(host= ‘192.168.43.22‘,port=6379) #選擇進程池 r = redis.Redis(connection_pool=poll) # #set()實現定義字符串名成,值,過期時間(ex[s],ps[ms],nx[True時如果不存在就新建],xx[True時如果存在就覆蓋他) # r.set(‘age‘,‘20‘,ex=2) # print(r.get(‘age‘).decode()) # time.sleep(2) # print((r.get(‘age‘).decode()) if r.get(‘age‘)!= None else ‘none‘) # nx[True時如果不存在就新建],存在也不更改 # r.set(‘name‘,‘lisi‘,nx=True) # print(r.get(‘name‘)) # xx[True時如果存在就覆蓋他],不存在也不新建 # r.set(‘name‘,‘man‘,xx=True) # print(r.get(‘name‘)) #setnx()如果 key 已經存在,返回 False # print(r.setnx(‘name2‘,‘huhu‘)) # print(r.get(‘name2‘)) #setex()設置 key 對應的值為 string 類型的 value,並指定此鍵值對應的有效期 # r.setex(‘age1‘,‘23‘,10) # print(r.get(‘age1‘)) # time.sleep(10) # print(r.get(‘age1‘)) # setrange()設置指定 key 的 value 值的子字符串 # r.set(‘name‘,‘man‘) # r.setrange(‘name‘,1,‘e‘) # print(r.get(‘name‘)) # mset()一次設置多個 key 的值,成功返回 ok 表示所有的值都設置了,失敗返回 0 表示沒有任何值被設置。 # r.mset({‘mes1‘:‘nihao‘,‘mes2‘:‘woyehao‘}) # print(r.mget([‘mes1‘,‘mes2‘])) # msetnx()一次設置多個 key 的值,成功返回 ok 表示所有的值都設置了,失敗返回 0 表示沒有任何值被設置,但是不會覆蓋已經存在的 key。 #都不存在時新建 # print(r.msetnx({‘mes11‘:‘nihao‘,‘mes21‘:‘woyehao1‘})) # print(r.mget([‘mes11‘, ‘mes21‘])) # getset()設置 key 的值,並返回 key 的舊值 # print(r.getset(‘mes11‘,‘nihaoma‘)) # print(r.get(‘mes11‘)) # getrange()獲取指定 key 的 value 值的子字符串。 # print(r.getrange(‘mes11‘,1,3)) # incr()對 key 的值做加加操作,並返回新的值。註意 incr 一個不是 int 的 value 會返回錯誤,incr 一個不存在的 key,則設置 key 為 1 # print(r.incr(‘ids‘)) # incrby()同 incr 類似,加指定值 ,key 不存在時候會設置 key,並認為原來的 value 是 0 # print(r.incrby(‘ids‘,3)) # decr()對 key 的值做的是減減操作,decr 一個不存在 key,則設置 key 為-1 # print(r.decr(‘lib‘)) # append()給指定 key 的字符串值追加 value,返回新字符串值的長度 # print(r.append(‘mes11‘,‘123‘)) # print(r.get(‘mes11‘)) # strlen()取指定 key 的 value 值的長度 # r.set(‘info‘,‘1234‘) # print(r.strlen(‘info‘))
python操作redis之String操作