Python Redis string

- set(name, value, ex=None, px=None, nx=False, xx=False)
- # 在Redis中设置值,默认,不存在则创建,存在则修改
参数:
ex,过期时间(秒)
px,过期时间(毫秒)
nx,如果设置为True,则只有name不存在时,当前set操作才执行
xx,如果设置为True,则只有name存在时,岗前set操作才执行
- setnx(name, value)
- # 设置值,只有name不存在时,执行设置操作(添加)
- setex(name, value, time)
- # 设置值
# 参数:
# time,过期时间(数字秒 或 timedelta对象)
- psetex(name, time_ms, value)
- # 设置值
# 参数:
# time_ms,过期时间(数字毫秒 或 timedelta对象)
- mset(*args, **kwargs)
- # 批量设置值
如:
mset(k1='v1', k2='v2')
或
mget({'k1': 'v1', 'k2': 'v2'})
- get(name)
- # 获取值
- mget(keys, *args)
- # 批量获取
如:
mget('ylr', 'wupeiqi')
或
r.mget(['ylr', 'wupeiqi'])
- getset(name, value)
- # 设置新值并获取原来的值
- getrange(key, start, end)
- # 获取子序列(根据字节获取,非字符)
# 参数:
# name,Redis 的 name
# start,起始位置(字节)
# end,结束位置(字节)
# 如: "武沛齐" ,-3表示 "武"
- setrange(name, offset, value)
- # 修改字符串内容,从指定字符串索引开始向后替换(新值太长时,则向后添加)
# 参数:
# offset,字符串的索引,字节(一个汉字三个字节)
# value,要设置的值
- setbit(name, offset, value)
- # 对name对应值的二进制表示的位进行操作
#使用场景:高并发访问的用户统计
#可以设置每一个用户为一个bit 10M存上亿用户
#
#setbit n1 100用户 #添加100用户存1bit
#getbit n1 100用户 #查询100用户是否存活 # 参数:
# name,redis的name
# offset,位的索引(将值变换成二进制后再进行索引)
# value,值只能是 或 # 注:如果在Redis中有一个对应: n1 = "foo",
那么字符串foo的二进制表示为:
所以,如果执行 setbit('n1', , ),则就会将第7位设置为1,
那么最终二进制则变成 ,即:"goo" # 扩展,转换二进制表示: # source = "武沛齐"
source = "foo" for i in source:
num = ord(i)
print bin(num).replace('b','') 特别的,如果source是汉字 "武沛齐"怎么办? 答:对于utf-,每一个汉字占 个字节,那么 "武沛齐" 则有 9个字节。 对于汉字,for循环时候会按照 字节 迭代,那么在迭代时,将每一个字节转换 十进制数,然后再将十进制数转换成二进制。
- getbit(name, offset)
- # 获取name对应的值的二进制表示中的某位的值 (0或1)
- bitcount(key, start=None, end=None)
- # 获取name对应的值的二进制表示中 1 的个数
# 参数:
# key,Redis的name
# start,位起始位置
# end,位结束位置
- bitop(operation, dest, *keys)
- # 获取多个值,并将值做位运算,将最后的结果保存至新的name对应的值
- strlen(name)
- # 返回name对应值的字节长度(一个汉字3个字节)
- incr(self, name, amount=1)
- # 自增 name对应的值,当name不存在时,则创建name=amount,否则,则自增。
# 参数:
# name,Redis的name
# amount,自增数(必须是整数) # 注:同incrby
- incrbyfloat(self, name, amount=1.0)
- # 自增 name对应的值,当name不存在时,则创建name=amount,否则,则自增。
# 参数:
# name,Redis的name
# amount,自增数(浮点型)
- decr(self, name, amount=1)
- # 自减 name对应的值,当name不存在时,则创建name=amount,否则,则自减。
# 参数:
# name,Redis的name
# amount,自增数(浮点型)
- append(key, value)
- # 在redis name对应的值后面追加内容
# 参数:
key, redis的name
value, 要追加的字符串
Python Redis string的更多相关文章
- [置顶] Redis String类型数据常用的16条命令总结
Redis String类型数据常用的16条命令总结 描述:String 类型是最简单的类型,一个Key对应一个Value,String类型是二进制安全的.Redis的String可以包含任何数据,比 ...
- python的string用法
s.strip().lstrip().rstrip(',') S.lower() #小写 S.upper() #大写 S.swapcase() #大小写互换 S.capitalize() #首字母大写 ...
- Python 常用string函数
Python 常用string函数 字符串中字符大小写的变换 1. str.lower() //小写>>> 'SkatE'.lower()'skate' 2. str.upper ...
- python+redis测试环境搭建
针对windows操作系统. redis安装: 微软操作系统下,需下载github下面的开源项目,redis网站地址可以找到,直接解压即可. cmd到指定目录,输入下方命令,启动redis服务. re ...
- python中string模块各属性以及函数的用法
任何语言都离不开字符,那就会涉及对字符的操作,尤其是脚本语言更是频繁,不管是生产环境还是面试考验都要面对字符串的操作. python的字符串操作通过2部分的方法函数基本上就可以解决所有的字符串 ...
- Python redis 简单介绍
Python redis 简单介绍 1.安装 终端输入: pip(or)pip3.6 install redis 安装成功 2.哈哈,发现我并没有redis服务可以访问,所以到这里,在本机安装了red ...
- python中string格式化
python中可以对string, int, float等数据类型进行格式化操作.下面举例来说明一些常用操作. 先贴出 python 对 String Formatting Operations 讲解 ...
- C#操作Redis String字符串
/// <summary> /// Redis String 操作 /// </summary> public static void Redis_String() { Red ...
- PyQt的QString和python的string的区别
转载于http://blog.chinaunix.net/uid-200142-id-4018863.html python的string和PyQt的QString的区别 python string和 ...
随机推荐
- css背景图撑开盒子高度
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Nestjs 身份验证
文档 yarn add @nestjs/passport passport passport-http-bearer @nestjs/jwt passport-jwt auth.service.ts ...
- Number()、parseInt()和parseFloat()的区别
JS中Number().parseInt()和parseFloat()的区别 三者的作用: Number(): 可以用于任何数据类型转换成数值: parseInt(): 函数可解析一个字符串,并返回一 ...
- mac npm编译的时候,一直报 node 镜像找不到
目前我所知的方法就是卸载.重装node,或者是升级node 卸载: brew uninstall node 安装: brew install node 升级: brew upgrade node
- 浅析 Hinton 最近提出的 Capsule 计划
[原文] 浅析 Hinton 最近提出的 Capsule 计划 关于最新的 Hinton 的论文 Dynamic Routing Between Capsules,参见 https:// ...
- html 中a标签的问题(无反应,跳转,调用方法)
让超链接点击后不跳转,可以用href = "#",但是这个#就会锚点到页面最上边 点击链接后不跳转可以设置成 1.<a href="javascri ...
- 2018今日头条杯 E-Jump a Jump
Problem E. Jump A JumpInput file: standard inputOutput file: standard outputTime limit: 1 secondsMemor ...
- webservice接口测试wsdl
http和webservice接口测试有什么区别? webservice的基础组成是http+xml 三要素:soap传输协议,uddi,wsdl(webservice描述语言xml格式) 优点:跨平 ...
- 上传js,js修改html
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- Mac破解免费office软件
一.下载安装包及破解工具 地址: https://pan.baidu.com/s/1hugtoLQ 密码: s5in 附官网地址 文件夹中包含三个文件: Office16安装文件 Microsoft_ ...