python下memcache的常用操作

本文详细介绍了Memcached中的各种命令,包括存储命令如set、add、replace等,获取命令如get,以及其他常用命令如delete和stats等。通过示例展示了如何使用这些命令进行键值对的管理和操作。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

存储命令: set/add/replace/append/prepend/cas
获取命令: get/gets
其他命令: delete/stats..

add方法
添加一条键值对,如果已经存在的key,重复执行add操作会报异常。
replace方法
replace修改某个key的值,如果key不存在,则异常。
set :设置一个键值对,如果key不存在,则创建,如果key存在,则修改;
set_multi:设置多个键值对,如果key不存在,则创建,如果key存在,则修改。
delete:在Memcached中删除指定的一个键值对;
delete_multi:在Memcached中删除指定的多个键值对。
get和get_multi方法
get : 获取一个键值对;
get_multi:获取多个键值对。
append:修改指定key的值,在该值后面追加内容;
prepend:修改指定key的值,在该值前面插入内容。

incr:自增,将Memcached中的某一个值增加N(N默认为1);
decr:自减,将Memcached中的某一个值减少N(N默认为1)。
set方法和add方法的区别

set = add + replace
1、memcache::add 方法:add方法用于向memcache服务器添加一个要缓存的数据。

注意:如果memcache服务器中已经存在要存储的key,此时add方法调用失败。

2、memcache::set 方法:set方法用于设置一个指定key的缓存内容,set方法是add方法和replace方法的集合体。

注意:

1)、如果要设置的key不存在时,则set方法与add方法的效果一致;

2)、如果要设置的key已经存在时,则set方法与replace方法效果一样。

3、 mmecache::replace方法: replace方法用于替换一个指定key的缓存内容,如果key不存在则返回false

示例:

import memcache

mc= memcache.Client(['192.168.31.118:11212'],debug=True)
mc.delete("liao")
mc.add("niao","chao")
print(mc.get("niao"))
mc.replace("niao","liao")
print(mc.get("niao"))

#set =add +replace
mc.set("aa","hello")
print(mc.get("aa"))

#set_multi(dict)
#get_multi(list)
mc.set_multi({"k100":"v100","k101":"v101","k102":"v102"})
print(mc.get_multi(["k100","k101","k102"]))

mc.delete("k100")
mc.delete_multi(["k100","k101","k102"])
print(mc.get_multi(["k100","k101","k102"]))

#append和prepend
mc.set_multi({"test1":"v100","test2":"v101","test3":"v102"})
print (mc.get_multi(["test1","test2","test3"]))
mc.append("test1","hello")
print (mc.get("test1"))
mc.prepend("test2","word")
print mc.get("test2")

#incr默认自增1
# decr默认自减1
mc.set("shop",100)
mc.incr("shop")
print (mc.get("shop"))
mc.incr("shop",100)
print(mc.get("shop"))

mc.set("shop",1000)
mc.decr("shop")
print (mc.get("shop"))
mc.decr("shop",100)
print(mc.get("shop"))

结果:
liao
liao
hello
{‘k100’: ‘v100’, ‘k101’: ‘v101’, ‘k102’: ‘v102’}

{‘test1’: ‘v100’, ‘test3’: ‘v102’, ‘test2’: ‘v101’}
v100hello
wordv101

101
201
999
899

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值