python 删除set指定值_Python操作三大数据库 Redis
生活随笔
收集整理的這篇文章主要介紹了
python 删除set指定值_Python操作三大数据库 Redis
小編覺得挺不錯的,現(xiàn)在分享給大家,幫大家做個參考.
1、redis安裝
pip install redis2、redis連接(連接池)
所以為了節(jié)省資源,減少多次連接損耗,連接池的作用相當于緩存了多個客戶端與redis服務(wù)端的連接。
import redispool = redis.ConnectionPool(host = "localhost", port = 6379, password = '', db = 0, max_connections = 20)_redis = redis.Redis( connection_pool=pool)3、字符串 string
示例代碼如下:
''' set(name, value, ex=None, px=None, nx=False, xx=False) ex: 過期秒 px: 過期毫秒 nx: 設(shè)置為True,只有name不存在才執(zhí)行 xx: 設(shè)置為True,只有name存在才執(zhí)行'''_redis.set('python', 'test', ex=3) #設(shè)置值_redis.get('python') #獲取值 結(jié)果:test_redis.mset({ 'database': 'redis', 'method': 'mset'}) #批量設(shè)置值_redis.mget('database', 'method') #批量獲取值 結(jié)果:redis, mset_redis.strlen('database') #獲取對應(yīng)值長度 結(jié)果:5''' incr/decr(name, amount=1) name: 自增/自減對應(yīng)值,沒有則創(chuàng)建 amount: 自增/自減數(shù)-整數(shù)????常見應(yīng)用場景:點贊'''_redis.incr('test:incr', 2) #自增2_redis.decr('test:incr', 1000) #自減1000_redis.exists('database') #判斷是否存在 結(jié)果:Ture_redis.append('database', '2.0') #對應(yīng)的值后面追加內(nèi)容_redis.delete('database') #刪除_redis.keys() #獲取全部鍵名4、哈希 hash
示例代碼如下:
_redis.hset('hash', 'key:', 'value') #創(chuàng)建鍵值對 沒有就新增,有的話就修改_redis.hget('hash', 'key:') #單個取hash的key對應(yīng)的值_redis.hmset('hash2', {'key2:':'value2', 'key3:':'value3'}) #批量創(chuàng)建鍵值對_redis.hmget('hash2', ['key2:', 'key3:']) #批量獲取鍵值對_redis.hkeys('hash2') #獲取所有的鍵名_redis.hvals('hash2') #獲取所有的鍵值_redis.hgetall('hash2') #獲取所有的鍵名對應(yīng)鍵值_redis.hlen('hash2') #獲取對應(yīng)長度''' hincrby(name, key, amount=1) name: redis中的name key: hash對應(yīng)的key amount: 自增/自減數(shù)-整數(shù)'''_redis.hincrby('test_hincr', 'num', 1) #自增name對應(yīng)的hash中的指定key的值_redis.hexists('hash2', 'key2') #判斷name對應(yīng)key的值是否存在_redis.hdel('hash2', 'key2') #刪除鍵值對5、列表 list
示例代碼如下:
_redis.lpush('list', 4, 3, 2, 1) #在name對應(yīng)的list中從最左邊添加元素,沒有則創(chuàng)建并添加_redis.lpushx('list2', 10) #在name對應(yīng)的list中從最左邊添加元素,沒有則不進行_redis.rpush('list', 5, 6, 7, 8) #在name對應(yīng)的list中從最右邊添加元素,沒有則創(chuàng)建并添加_redis.rpushx('list2', 10) #在name對應(yīng)的list中從最右邊添加元素,沒有則不進行_redis.llen('list') #列表長度''' linsert(name, where, refvalue, value) name - redis的name where - BEFORE或AFTER refvalue - 標桿值,即:在它前后插入數(shù)據(jù) value - 要插入的數(shù)據(jù)'''_redis.linsert('list', 'after', '9', 10) #新增(固定索引號位置插入元素)''' r.lset(name, index, value) name - redis的name index - list的索引位置 value - 要設(shè)置的值'''_redis.lset('list', '9', 9) #修改(指定索引號進行修改)''' name - redis的name value - 要刪除的值 num - 0:刪除列表中所有指定值;2:從前到后,刪除2個;-2:從后到前,刪除2個'''_redis.lrem('list', '9', 1) #刪除(指定值進行刪除)_redis.lpop('list') #列表最左邊刪除并返回_redis.rpop('list') #列表最右邊刪除并返回_redis.lindex('test', 0) #在name對應(yīng)的列表中根據(jù)索引獲取列表元素6、無序集合 set
示例代碼如下:
_redis.sadd('set', 1, 2, 3, 4) #對應(yīng)的集合中添加元素_redis.scard('set') #集合長度_redis.smembers('set') #獲取集合中所有的成員_redis.sdiff('set1', 'set2') #差集_redis.sdiffstore('set3', 'set1', 'set2') #找到兩集合的差集存儲到新的集合_redis.sinter("set1", "set2") #交集_redis.sinterstore('set3', 'set1', 'set2') #找到兩交集的差集存儲到新的交集_redis.sunion("set1", "set2") #并集_redis.sunionstore('set3', 'set1', 'set2') #找到兩并集的差集存儲到新的并集_redis.sismember('set', 10) #值是否集合成員_redis.spop('set') #隨機刪除集合一個成員_redis.srem('set', 10) #刪除集合指定成員7、有序集合 set
示例代碼如下:
_redis.zadd('zset', {'z1':1, 'z2':2, 'z3':3}) #新增有序集合_redis.zscore('zset', 'z1') #獲取分數(shù) 已排序_redis.zcard('zset') #集合長度_redis.zcount('zset', 1, 2) #獲取name對應(yīng)的有序集合中分數(shù)''' zrevrange(name, start, end, withscores=False, score_cast_func=float) #獲取可排序集合元素 name - redis的name start - 有序集合索引起始位置(非分數(shù)) end - 有序集合索引結(jié)束位置(非分數(shù)) desc - 排序規(guī)則,默認按照分數(shù)從小到大排序 withscores - 是否獲取元素的分數(shù),默認只獲取元素的值 score_cast_func - 對分數(shù)進行數(shù)據(jù)轉(zhuǎn)換的函數(shù)'''_redis.zrevrange("zset1", 0, -1, withscores=True) #獲取有序集合中所有元素和分數(shù),分數(shù)倒序_redis.zrevrangebyscore('zset2', 30, 10, withscores=True) #根據(jù)分數(shù)范圍獲取有序集合的元素并排序_redis.zcount('zset2', 1, 10) #區(qū)間和_redis.zincrby("zset2", "z1", amount=2) # 每次將z1的分數(shù)自增2_redis.zrem('zset2', 'z1') #刪除單個_redis.zremrangebyrank('zset2', 1, 10) #根據(jù)排行范圍刪除_redis.zremrangebyscore('zset2', 1, 10) #根據(jù)分數(shù)范圍刪除Redis客戶端管理軟件,可在公眾號回復(fù) "redis工具" 領(lǐng)取。
| 以上都是工作上常見的命令,查不到可以參考Redis中文網(wǎng),建議收藏 |
總結(jié)
以上是生活随笔為你收集整理的python 删除set指定值_Python操作三大数据库 Redis的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: centos linux引导修复_【Li
- 下一篇: 节目表演的点子_矿泉水桶当架子鼓,幼儿园