python memcache 常用操作
- 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
python memcache 常用操作的更多相关文章
- python anaconda 常用操作;conda 命令指南
在使用 python anaconda时,经常会用到很多常用操作,记录下来,方便以后更好地使用: conda: Conda既是一个包管理器又是一个环境管理器.你肯定知道包管理器,它可以帮你发现和查看包 ...
- memcache常用操作
Command Description Example get 读取键值 get mykey set 设置新键值 set mykey 0 60 5 add 新增键值 add newkey 0 60 5 ...
- 【Selenium2+Python】常用操作
Webdriver中比较常用的操作元素的方法: clear() 清除输入框的默认内容 send_keys("xxx") 在一个输入框里输入xx内容 ——如果输入中文,则 ...
- python 列表常用操作(二)
1.tuple 的 unpack a,b = t 2.格式化输出 print('您的输入:{},值为{}',format(a,b)) 3.日期计算 import datetime as dt impo ...
- Python list 常用操作
测试版本: python 2.7 获取第一个.最后一个元素 list1 = ["a", "b", "c"] len1 = len(list1 ...
- python 字符串常用操作
字符串常用方法 capitalize() String.capitalize() 将字符串首字母变为大写 name = 'xiaoming' new_name = name.capitalize() ...
- Python Redis 常用操作
delete(*names) # 根据删除redis中的任意数据类型 exists(name) # 检测redis的name是否存在 keys(pattern='*') # 根据模型获取redis的n ...
- Python json常用操作
json模块 (字符串操作) json.dumps() :对数据进行编码 json.loads() :对数据进行解码 json模块(文件操作) # 写入 JSON 数据 with open('data ...
- Python Redis常用操作(持续更新)
目录 1.Redis简介 2.Redis部署 3.Redis API应用 4.String操作 1.Redis简介 redis是业界主流的key-value,nosql数据库之一.和Memcached ...
随机推荐
- Toward Convolutional Blind Denoising of Real Photographs
本文提出了一个针对真实图像的盲卷积去噪网络,增强了深度去噪模型的鲁棒性和实用性. 摘要 作者提出了一个 CBD-Net,由噪声估计子网络和去噪子网络两部分组成. 作者设计了一个更加真实的噪声模型,同时 ...
- web颜色转换为delphi
今天在写写一个日志浏览和报警功能时,要求用多种颜色去显示不同的信息,客户给出的颜色是web的 rgb颜色,就是用6位16进制数去表示的颜色,直接把他赋值给Delphi的TColor变量,发现显示的颜色 ...
- 【bzoj3000】Big Number 数论
题目描述 给你两个整数N和K,要求你输出N!的K进制的位数. 输入 有多组输入数据,每组输入数据各一行,每行两个数——N,K 输出 每行一个数为输出结果. 样例输入 2 5 2 10 10 10 10 ...
- IE6中png背景图片透明的最好处理方法
在IE6浏览器下png(24位)的图片显示是不能透明的. 1.处理办法就是用DDPngMin.js <!--[if IE 6]> <script src="js/DDPng ...
- CSS优化压缩
顾名思义缩写有简写意思,那就总结一下CSS缩写知识点.为什么要让CSS属性缩写?1.简化代码.一些CSS属性简写可以减少CSS代码从而减少CSS文件的占用字节.加快网页下载速度和网页加载速度.2.优化 ...
- NOIP2018复赛 游记
Day -? 停了两个星期的课,逃了一场期中考试.随便做了点题并不知道有什么用.见不到夫人很难受. Day 0 依然没有跟学校走.据说今年合肥居然不下雨,印象里每年这个时候来到这里都是阴雨连绵……突然 ...
- BZOJ4869 [Shoi2017]相逢是问候 【扩展欧拉定理 + 线段树】
题目链接 BZOJ4869 题解 这题调得我怀疑人生,,结果就是因为某些地方\(sb\)地忘了取模 前置题目:BZOJ3884 扩展欧拉定理: \[c^a \equiv c^{a \mod \varp ...
- Phaser的timer用法
1. 延迟timer,相当于setTimeout game.time.events.add(Phaser.Timer.SECOND*5,this.delayOver,this); 2. 循环timer ...
- 【17.12.22.B】
B 题面描述: 给一个长度为n的序列,a[1], a[2], ... , a[n], 选出连续的k个数,使得这k个数的最大值加这k个数的or值最大. 假设选出的数为a[l], a[l + 1], .. ...
- vector 进阶
http://classfoo.com/ccby/article/jnevK #include <iostream> #include <vector> #include &l ...