命令html |
語法python |
概述redis |
返回值數據庫 |
Redis DEL 命令dom |
del key [key ...]spa |
該命令用於在 key 存在時刪除 key。.net |
返回被刪除鍵的數量unix |
Redis Dump 命令code |
dump key_namehtm |
序列化給定 key ,並返回被序列化的值。 |
返回序列化後的值 |
exists key [key ...] |
檢查給定 key 是否存在 |
若 key 存在返回 1 ,不然返回 0 。 |
|
expire key seconds |
爲給定 key 設置過時時間,以秒計。 |
設置成功返回 1 。 當 key 不存在或者不能爲 key 設置過時時間時返回0 |
|
expireat key timestamp |
爲給定 key 設置過時時間,UNIX 時間戳(unix timestamp)。 |
設置成功返回 1 。 當 key 不存在或者不能爲 key 設置過時時間時返回 0 。 |
|
pexpire key milliseconds |
設置 key 的過時時間以毫秒計 |
設置成功返回 1 。 當 key 不存在或者不能爲 key 設置過時時間時返回 0 。 |
|
pexpireat key milliseconds-timestamp |
設置 key 過時時間的時間戳(unix timestamp) 以毫秒計 |
設置成功返回 1 。 當 key 不存在或者不能爲 key 設置過時時間時返回 0 。 |
|
keys pattern |
查找全部符合給定模式( pattern)的 key 。 |
返回符合給定模式的 key |
|
move key db |
將當前數據庫的 key 移動到給定的數據庫 db 當中 |
移動成功返回 1 ,失敗則返回 0 |
|
persist key |
移除 key 的過時時間,key 將持久保持 |
當過時時間移除成功時,返回 1 。 若是 key 不存在或 key 沒有設間,返回 0 |
|
pttl key |
以毫秒爲單位返回 key 的剩餘的過時時間。 |
當 key 不存在時,返回 -2 。 當 key 存在但沒有設置剩餘生存時 間時,返回 -1 。 不然,以毫秒爲單位,返回 key 的剩餘生存時間。 |
|
ttl key |
以秒爲單位,返回給定 key 的剩餘生存時間(TTL, time to live) |
當數據庫不爲空時,返回一個 key 。 當數據庫爲空時,返回 nil |
|
randomkey |
從當前數據庫中隨機返回一個 key 。 |
更名成功時提示 OK ,失敗時候返回一個錯誤。 |
|
rename key newkey |
修改 key 的名稱 |
更名成功時提示 OK ,失敗時候返回一個錯誤. |
|
renamenx key newkey |
僅當 newkey 不存在時,將 key 更名爲 newkey 。 |
修改爲功時,返回 1 。 若是 NEW_KEY_NAME 已經存在,返回 0 當OLD_KEY_NAME 不存在時,返回錯誤ERR no such key |
|
type key | 返回 key 所儲存的值的類型 |
返回 key 所儲存的值的類型。none (key不存在) string (字符串) list (列表) set (集合) zset (有序集) hash (哈希表) |
# -*- coding: utf-8 -*-
import redis
# 鏈接本地的redis
r = redis.Redis(host="127.0.0.1",port=6379)
1. delete DEL 命令用於刪除已存在的鍵。不存在的 key 會被忽略
print(r.set('1', 'hello redis')) # set 設置指定 key 的值, 若是設置正確返回 True
print(r.get('1'))# 獲得 鍵爲1 的值 # hello redis
print(r.delete('1')) # 刪除 鍵爲1 的值
print(r.get('1')) # 由於上面已經把鍵爲1 的值刪除掉,因此返回的是None
2. exists
# 設定鍵爲2的值是 hello redis
r.set('2', 'hello redis')
# 存在就返回True 不存在就返回False
print(r.exists('2')) # 返回True
print(r.exists('33')) # 返回False
3. Expire 命令用於設置 key 的過時時間。key 過時後將再也不可用。
r.set('2', 'hello redis')
# 成功就返回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', 'hello redis')
# 成功就返回True 失敗就返回False,下面的1598033936表示時間戳
print(r.expireat('2',1598026546))
print(r.get('2'))
5.PEXPIREAT 命令用於設置 key 的過時時間,已毫秒技。key 過時後將再也不可用。主意:時間精確到毫秒,時間戳是13位數字
r.set('2', 'hello redis')
#成功就返回True 失敗就返回False。
print(r.expireat('2',1598666972100))
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