• add() 添加一条键值对,如果key已存在,重复执行add操作会报异常
mc.add('name2', 'lisi')
print(mc.get('name2'))
# lisi
  • replace 修改某个key的值,如果key不存在,报异常
# mc.add('name','wangwu')    # 添加个已存在key ,发生异常
# MemCached: while expecting 'STORED', got unexpected response 'NOT_STORED'
  • set() 设置一个键值对,如果Key不存在,则创建,存在,则修改
mc.set('name2', 'zhaoliu')
print(mc.get('name2'))
# zhaoliu

add() 和set() 的区别:

  • add()用于向memcache添加一个要缓存的数据,当key存在时,调用失败
  • set()用于设置一个指定的key的缓存内容,key存在修改,不存在创建,set()是add()和replace()的集合体
mport memcache

mc = memcache.Client(['11.11.11.11:12000'], debug=True)

mc.add('name2', 'lisi')
print(mc.get('name2'))
# lisi # mc.add('name','wangwu') # 添加个已存在key ,发生异常
# MemCached: while expecting 'STORED', got unexpected response 'NOT_STORED'
mc.set('name2', 'zhaoliu')
print(mc.get('name2'))
# zhaoliu
####
# C:\Python27\python.exe D:/Python/memcache/memcache2.py
# lisi
# zhaoliu
#
# Process finished with exit code
  • set_muilt() 设置多个键值对,key存在,修改,不存在,创建 键值对以字典形式传入
mc.set_multi({'key1':'v100', 'key2':'v200', 'key3':'v300', 'key4':'v400', 'key5':'v500'})
  • get() 获取一个key的值
  • get_muilt() 获取多个key的值 ,多个key以list方式传入,返回一个字典对象
print(mc.get('key5'))
print(mc.get_multi(['key1', 'key2', 'key3', 'key4', 'key5']))
# v500
# {'key3': 'v300', 'key2': 'v200', 'key1': 'v100', 'key5': 'v500', 'key4': 'v400'}
  • delete() 删除指定的一个键值对
  • delete_muild() 删除指定的多个键值对 多个key以list方式传入
mc.delete("key1")
print(mc.get('key1'))
# None
mc.delete_multi(['key2', 'key3', 'key4'])
print(mc.get_multi(['key1', 'key2', 'key3', 'key4', 'key5']))
# {'key5': 'v500'}
  • append() 修改指定key的值,在该值后面追加内容
  • prepend() 修改指定key的值,在该值前面插入内容
mc.add('test','hello')
print(mc.get('test'))
# hello
mc.append('test', 'world')
print(mc.get('test'))
# helloworld
mc.prepend('test', 'hi,')
print(mc.get('test'))
# hi,helloworld
  • incr(key[, n]) 自增,对某一个key的值增加N (N 默认为1)
mc.add('num', '1101')
mc.incr('num')
print(mc.get('num'))
mc.incr('num',100)
print(mc.get('num')
  • decr(key[, n]) 自减,对某一个key的值减少N (N 默认为1)
mc.set('num', '1000')
mc.decr('num')
print(mc.get('num'))
# 999
mc.decr('num',100)
print(mc.get('num'))
# 899

最新文章

  1. [C#6] 3-null 条件运算符
  2. Java读取文件最后两行
  3. easyui DataGrid 工具类之 TableUtil class
  4. enable feature AJAX of MOSS2007
  5. Devexpress Winform Gridcontrol 中根据条件单元格的值改变单元格的颜色等属性。
  6. BPF and eBPF linux
  7. (转载)读取xml中的指定节点的值
  8. jquery json 操作(转)
  9. Ettus Research USRP B200/B210 simple case
  10. jetty服务器访问系统的域名
  11. javascript 向上滚动
  12. AFNetworking了解
  13. STM32学习笔记2-系统时钟知识及程序配置
  14. hdu4857 逃生 bestcoder round1 A
  15. ubuntu 14.04 64位安装HTK3.5
  16. 末学者笔记--shell编程上 1 玄
  17. 2017-9-13-Linux移植:u-boot的移植
  18. 我的Java之旅 第二课 Eclipse使用
  19. 2017-2018-2 1723《程序设计与数据结构》第十一周作业 & 实验三 & (总体)第三周结对编程 总结
  20. 谷哥的小弟学前端(10)——JavaScript基础知识(1)

热门文章

  1. 图的同构 (Graph Isomorphism)
  2. Daily Scrum02 12.04
  3. 【iOS开发】多线程下NSOperation、NSBlockOperation、NSInvocationOperation、NSOperationQueue的使用
  4. sql声明变量存储查询结果
  5. PAT 甲级 1007 Maximum Subsequence Sum
  6. poj 1034 The dog task (二分匹配)
  7. P1118 [USACO06FEB]数字三角形`Backward Digit Su`…
  8. [NOI.AC省选模拟赛3.23] 染色 [点分治+BFS序]
  9. Visual Studio调试之断点技巧篇补遗
  10. 洛谷 [SDOI2015]约数个数和 解题报告