python memcache 常用操作
2024-08-29 20:16:55
- 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
最新文章
- [C#6] 3-null 条件运算符
- Java读取文件最后两行
- easyui DataGrid 工具类之 TableUtil class
- enable feature AJAX of MOSS2007
- Devexpress Winform Gridcontrol 中根据条件单元格的值改变单元格的颜色等属性。
- BPF and eBPF linux
- (转载)读取xml中的指定节点的值
- jquery json 操作(转)
- Ettus Research USRP B200/B210 simple case
- jetty服务器访问系统的域名
- javascript 向上滚动
- AFNetworking了解
- STM32学习笔记2-系统时钟知识及程序配置
- hdu4857 逃生 bestcoder round1 A
- ubuntu 14.04 64位安装HTK3.5
- 末学者笔记--shell编程上 1 玄
- 2017-9-13-Linux移植:u-boot的移植
- 我的Java之旅 第二课 Eclipse使用
- 2017-2018-2 1723《程序设计与数据结构》第十一周作业 &; 实验三 &; (总体)第三周结对编程 总结
- 谷哥的小弟学前端(10)——JavaScript基础知识(1)
热门文章
- 图的同构 (Graph Isomorphism)
- Daily Scrum02 12.04
- 【iOS开发】多线程下NSOperation、NSBlockOperation、NSInvocationOperation、NSOperationQueue的使用
- sql声明变量存储查询结果
- PAT 甲级 1007 Maximum Subsequence Sum
- poj 1034 The dog task (二分匹配)
- P1118 [USACO06FEB]数字三角形`Backward Digit Su`…
- [NOI.AC省选模拟赛3.23] 染色 [点分治+BFS序]
- Visual Studio调试之断点技巧篇补遗
- 洛谷 [SDOI2015]约数个数和 解题报告