python 操作redis
1.字串
#!/usr/bin/env python
#-*- coding:utf-8 -*-
import
redis
#python 操作str
class
teststring(object):
"""set --設定值
get --獲取值
mset --設定多個鍵值對
mget --獲取多個鍵值對
del --刪除
incr/decr -- 增加/減少 1
"""def
__init__
(self):
self.r = redis.strictredis(host='
localhost
', port=6379, db=0)
deftest_set(self):
rest = self.r.set('
user2
', '
amy'
)
rest
return
rest
deftest_get(self):
rest = self.r.get('
user2')
rest
return
rest
deftest_mset(self):
"""mset --設定多個鍵值對
:return:
"""d =
rest =self.r.mset(d)
rest
return
rest
deftest_mget(self):
"""mget --獲取多個鍵值對
:return:
"""l = ['
user1
','user2
','user3
','user4
','user6']
rest =self.r.mget(l)
rest
return
rest
deftest_del(self):
"""del 刪除
:return:
"""rest = self.r.delete('
user1')
rest
return
rest
defmain():
str_obj =teststring()
str_obj.test_set()
str_obj.test_get()
str_obj.test_mset()
str_obj.test_mget()
str_obj.test_del()
if__name__ == '
__main__':
main()
2.列表
classtestlist(object):
"""lpush/rpush --從左/右插入資料
lrange -- 獲取指定長度的資料
ltrim -- 擷取一定長度的資料
lpop/rpop -- 移除最左/右的元素並返回
lpushx/rpushx -- key存在的時候才插入資料,不存在不做任何處理
"""def
__init__
(self):
self.r = redis.strictredis(host='
localhost
', port=6379, db=0)
deftest_push(self):
"""lpush/rpush --從左/右插入資料
lrange -- 獲取指定長度的資料
:return:
"""t = ('
amy', '
jhon')
reset = self.r.lpush('
l_eat2
', *t)
reset
reset = self.r.lrange('
l_eat2
', 0, -1)
reset
deftest_pop(self):
"""lpop/rpop -- 移除最左/右的元素並返回
:return:
"""rest = self.r.lpop('
l_eat2')
rest
reset = self.r.lrange('
l_eat2
', 0, -1)
reset
defmain():
#list
list_obj =testlist()
#list_obj.test_push()
list_obj.test_pop()
if__name__ == '
__main__':
main()
3.集合
classtestset(base):
"""sadd/srem --新增/刪除元素
sismember --判斷是否為set的乙個元素
smembers --返回該集合的所有成員
sdiff --返回乙個集合與其他集合的差異
sinter --返回幾個集合的交集
sunion --返回幾個集合的並集
"""def
test_sadd(self):
"""sadd/srem --新增/刪除元素
:return:
"""l = ['
cats
', '
dogs']
rest = self.r.sadd('
zoo3
', *l)
rest
rest = self.r.smembers('
zoo3')
rest
deftest_srem(self):
"""sadd/srem --新增/刪除元素
:return:
"""rest = self.r.srem('
zoo2
','dogs')
rest
rest = self.r.smembers('
zoo2')
rest
deftest_sinter(self):
"""sinter --返回幾個集合物件的交集
sunion --返回幾個集合物件的並集
:return:
"""rest = self.r.sunion('
zoo2
', '
zoo3')
rest
rest = self.r.sinter('
zoo2
','zoo3')
rest
defmain():
test_obj =testset()
test_obj.test_sadd()
test_obj.test_srem()
test_obj.test_sinter()
if__name__ == '
__main__':
main()
4.雜湊
classtesthash(base):
"""hset/hget --設定/獲取雜湊值
hmset/hmget --設定/獲取多對雜湊值
hsetnx --如果雜湊已經存在,則不設定
hkeys/hvals --返回所有keys/values
hlen -- 返回雜湊包含域
"""def
test_set(self):
"""hset/hget --設定/獲取雜湊值
:return:
"""reset = self.r.hset('
stu:***01
','name
','amy')
reset
reset = self.r.hexists('
stu:***01
','name')
reset
reset = self.r.hget('
stu:***01
','name')
reset
deftest_mset(self):
"""hmset/hmget --設定/獲取多對雜湊值
:return:
"""m =
rest = self.r.hmset('
stu:***03
',m)
rest
rest = self.r.hkeys('
stu:***03')
rest
defmain():
hash_obj =testhash()
hash_obj.test_set()
hash_obj.test_mset()
if__name__ == '
__main__':
main()
python下redis常用操作(上)
reids目前提供5種資料型別 string型別,list型別,set集合型別,有序集合型別,hash型別 redis中的string在記憶體中都是按照乙個key對應乙個value來儲存的。如 r.set name liaochao 示例 import redis pool redis.connec...
redis 常用操作
在ubuntu下面操作 redis的操作是以key value的形式儲存的 key為字串 value 字串,hash表,list集合,set集合,zset集合 五種型別 獲取值 1.獲取基本值 get key 2.獲取多個值 mget key1 key2 檢視鍵 1.檢視所有的鍵 keys 2.檢視...
Redis常用操作
redis cli p 34040 a password2 monitor monitor redis cli a password2 p 34040 keys x009 1699901 xargs redis cli a password2 p 34040 del redis cli a pass...