微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

《Redis操作Python系列、setbit位修改|CSDN创作打卡》

导读

setbit 对 key 对应值的二进制表示的位进行操作,这个功能用的是真不多,但是效率绝对是最快的,但是个人建议,就是1和0之间的改变,不然挺麻烦的。

语法

setbit(name, offset, value)

参数:

  • name - redis的name
  • offset - 位的索引(将值变换成二进制后再进行索引)
  • value - 值只能是 1 或 0

注:如果在Redis中有一个对应: n1 = "1",

那么字符串1也就是字符1的二进制表示为:00110001(49)

 

所以,如果执行 setbit('n1', 7, 0),也就是最后一位的1改为0,

那么最终二进制则变成 00110000,即:"48"

扩展,转换二进制表示:

【话说咱们已经到demo8.py了】

输入以下编码:

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.set('n1',1)#1是49=00110001
r.setbit('n1',7,0)#下标第7个改成0就是=00110000

print(r.get('n1'))

 

在测试一个

import redis

r = redis.Redis(host='localhost', port=6379, decode_responses=True)
r.set('n1',2)#2是50=00110010
r.setbit('n1',7,1)#下标第7个改成0就是=00110011

print(r.get('n1'))

完全符合。

希望能对大家有一定的帮助。欢迎一键三连,谢谢。

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐