1. 程式人生 > >redis學習一 (key)鍵,Python操作redis 鍵

redis學習一 (key)鍵,Python操作redis 鍵

lpad ren redis key lee 設置 amp res 列表 pex

# -*- coding: utf-8 -*-
import redis
#這個redis 連接不能用,請根據自己的需要修改
r =redis.Redis(host="123.516.174.910",port=6379,password="11111608")
1. delete DEL 命令用於刪除已存在的鍵。不存在的 key 會被忽略
print r.set(1, 4028b2883d3f5a8b013d57228d760a93) #set 設置指定 key 的值, 如果設置正確返回 True

print r.get(1) # 得到 鍵為1 的值    4028b2883d3f5a8b013d57228d760a93
print r.delete(1) # 刪除 鍵為1 的值 print r.get(1) #因為上面已經把鍵為1 的值刪除掉,所以返回的是None
2. exists
#設定鍵為2的值是  4028b2883d3f5a8b013d57228d760a93
r.set(2, 4028b2883d3f5a8b013d57228d760a93)
# 存在就返回True 不存在就返回False
print r.exists(2)  #返回True
print r.exists(33)  #返回False
3. Expire 命令用於設置 key 的過期時間。key 過期後將不再可用。
r.set(2, 4028b2883d3f5a8b013d57228d760a93)
#成功就返回True 失敗就返回False,下面的20表示是20秒
print r.expire(2,20)
#如果時間沒事失效我們能得到鍵為2的值,否者是None
print r.get(2)
 4.  Expireat 命令用於以 UNIX 時間戳(unix timestamp)格式設置 key 的過期時間。key 過期後將不再可用。主意:時間精確到秒,時間戳是10為數字
r.set(2, 4028b2883d3f5a8b013d57228d760a93)
#成功就返回True 失敗就返回False,下面的1598033936表示是在2020-08-22 02:18:56 鍵2 過期
print r.expireat(2,1598033936) print r.get(2)

 5.PEXPIREAT 命令用於設置 key 的過期時間,已毫秒技。key 過期後將不再可用。主意:時間精確到毫秒,時間戳是13位數字

r.set(2, 4028b2883d3f5a8b013d57228d760a93)
#成功就返回True 失敗就返回False。
print r.expireat(2,1598033936000)
print r.get(2)
6. Keys 命令用於查找所有符合給定模式 pattern 的 key 。
print r.set(111, 11)
print r.set(122, 12)
print r.set(113, 13)
print r.keys(pattern=11*)
# 輸出的結果是 [‘113‘, ‘111‘] 因為鍵122不和 11* 匹配
7. MOVE 命令用於將當前數據庫的 key 移動到給定的數據庫 db 當中,select可以設定當前的數據庫,如有需要請看select命令
因為我們默認使用的數據庫是db0,我們可以使用下面的命令鍵 2 移動到數據庫 1 中去
r.move(2,1)
8. PERSIST 命令用於移除給定 key 的過期時間,使得 key 永不過期
#設定鍵為 1 的值為11
print r.set(1, 11)
#設定鍵 1 過期時間為100秒
print r.expire(1,100)
# 查看鍵 1 的過期時間還剩下多少
print r.ttl(1)
# 目的是13秒後移除鍵 1 的過期時間
import time
time.sleep(3)
# 查看鍵 1 的過期時間還剩下多少
print r.ttl(1)
#移除鍵 1 的過期時間
r.persist(1)
# 查看鍵 1 的過期時間還剩下多少  輸出的結果是 None,我們可以通過redis desktop manager 查看鍵 1 的過期時間
print r.ttl(1)

9. Pttl 命令以毫秒為單位返回 key 的剩余過期時間。

# 當 key 不存在時,返回 -2 。 當 key 存在但沒有設置剩余生存時間時,返回 -1 。 否則,以毫秒為單位,返回 key 的剩余生存時間。
#設定鍵為 1 的值為11
print r.set(1, 11)
#設定鍵 1 過期時間為100秒
print r.expire(1,100)
import time
time.sleep(3)
#返回的結果是 96994 ,運行的結果不是固定的,大於是97秒鐘,主意是為了展示出返回的結果是毫秒,一秒等於1000毫秒
print r.pttl(1)

10. TTL 命令以秒為單位返回 key 的剩余過期時間。

# 當 key 不存在時,返回 -2 。 當 key 存在但沒有設置剩余生存時間時,返回 -1 。 否則,以毫秒為單位,返回 key 的剩余生存時間。
#設定鍵為 1 的值為11
print r.set(1, 11)
print r.expire(1,100)   #設定鍵 1 過期時間為100秒
import time
time.sleep(3)
print r.ttl(1) #返回的結果是 97
print r.ttl(123) #因為鍵 123 不存在  所以返回的結果是None
11.RANDOMKEY 命令從當前數據庫中隨機返回一個 key。當數據庫不為空時,返回一個 key 。 當數據庫為空時,返回 nil 。
print r.randomkey() #數據庫返回的是默認的數據庫 key
12 .Rename 命令用於修改 key 的名稱 。改名成功時提示 OK ,失敗時候返回一個錯誤。
print r.rename(1,1111) #修改成功返回 True
print r.rename(222,1111) #如果key 不存在 修改失敗返回 redis.exceptions.ResponseError: no such key
13. Renamenx 命令用於在新的 key 不存在時修改 key 的名稱 。
print r.exists(123123) #返回false
print r.renamenx(1111,123123) #成功返回True
print r.renamenx(1111,123123) #失敗返回    redis.exceptions.ResponseError: no such key
14. Type 命令用於返回 key 所儲存的值的類型
# 返回 key 的數據類型,數據類型有:none (key不存在),string (字符串),list (列表),set (集合),zset (有序集),hash (哈希表),
print r.set(1,"111111111")
print r.type(1) #返回的結果是string

print r.sadd(2,222222222222)
print r.type(2) #返回的結果是set

print r.lpush(3,33333333)
print r.type(3) #返回的結果是list


命令

描述

Redis DEL 命令

該命令用於在 key 存在是刪除 key。

Redis Dump 命令

序列化給定 key ,並返回被序列化的值。

Redis EXISTS 命令

檢查給定 key 是否存在。

Redis Expire 命令

seconds 為給定 key 設置過期時間。

Redis Expireat 命令

EXPIREAT 的作用和 EXPIRE 類似,都用於為 key 設置過期時間。不同在於 EXPIREAT 命令接受的時間參數是 UNIX 時間戳(unix timestamp)。

Redis PEXPIREAT 命令

設置 key 的過期時間億以毫秒計。

Redis PEXPIREAT 命令

設置 key 過期時間的時間戳(unix timestamp) 以毫秒計

Redis Keys 命令

查找所有符合給定模式( pattern)的 key 。

Redis Move 命令

將當前數據庫的 key 移動到給定的數據庫 db 當中。

Redis PERSIST 命令

移除 key 的過期時間,key 將持久保持。

Redis Pttl 命令

以毫秒為單位返回 key 的剩余的過期時間。

Redis TTL 命令

以秒為單位,返回給定 key 的剩余生存時間(TTL, time to live)。

Redis RANDOMKEY 命令

從當前數據庫中隨機返回一個 key 。

Redis Rename 命令

修改 key 的名稱

Redis Renamenx 命令

僅當 newkey 不存在時,將 key 改名為 newkey 。

Redis Type 命令

返回 key 所儲存的值的類型。



redis學習一 (key)鍵,Python操作redis 鍵