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

2022/1/26 2:04:15

本文主要是介绍《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'))

完全符合。

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



这篇关于《Redis操作Python系列、setbit位修改|CSDN创作打卡》的文章就介绍到这儿,希望我们推荐的文章对大家有所帮助,也希望大家多多支持为之网!


扫一扫关注最新编程教程