Hello,大家好!我是小安Sir,关于Redis数据库,本期应该是倒数第二期,下期是Python操作列表和集合(Redis)。
我初步打算,往后都会以Django或者Flask搭建运维平台为主,具体用是什么模块,主要看心情和决心,因为这个功能的完善和优化是永无止境的。
期间需要不断地学习新知识,总结,将零碎的知识块写成文章;晚上专研不能超过12点,否则很容易亢奋和钻牛角尖,最可怕的是白天写不出的代码竟然多数来自于梦境......
说实话,我还在纠结当中
......
好了,回归主题。
让我们荡起双桨,小船儿推倒Redis,oh yeah !
字符串之增删改查
基础教程
本文大纲
Attention
1. Redis增删改查
2. Python操作Redis
Redis增删改查
01
1.1 交互页面
1.2 创建字符串127.0.0.1:6379> set hello_world OK
OK
127.0.0.1:6379> set 测试 成功
OK
127.0.0.1:6379> set user1 HAHA
OK
127.0.0.1:6379> set 用户2 XIXI
OK
1.3 查询字符串127.0.0.1:6379> keys *
1) "user1"
2) "\xd3\xbb2"
3) "\xb2\xca"
4) "test"
5) "hello_world"
1.4 读取字符串127.0.0.1:6379> get silly
(nil)
127.0.0.1:6379> get hello_world
"OK"
127.0.0.1:6379> get 用户2
"XIXI"
127.0.0.1:6379> get 测试
"成功"
1.5 修改字符串
1.5.1 新值换旧值
对存在的key,一般set为默认修改。
命令:set key 新值127.0.0.1:6379> set hello_world NO_OK
OK
127.0.0.1:6379> get hello_world
"NO_OK"
1.5.2 新值无法换旧值
如果不希望set命令覆盖旧值,可以使用参数"NX"。
命令:set key value NX127.0.0.1:6379> get user1
"HAHA"
127.0.0.1:6379> set user1 HAHA NX
(nil)
127.0.0.1:6379> get user1
"HAHA"
1.5.3 append附加值
给字符串的末尾加上其他字符串,则可以不使用set命令,使用append即可。
命令:append key value127.0.0.1:6379> get hello_world
"NO_OK"
127.0.0.1:6379> append hello_world "_or_OK"
(integer) 11
127.0.0.1:6379> get hello_world
"NO_OK_or_OK"
127.0.0.1:6379>
1.5.4 含空格字符串
如果key对应的值有多个空格,则加双引号。
命令:set key "value1 value2"127.0.0.1:6379> get hello_world
"NO_OK"
127.0.0.1:6379> append hello_world "_or_OK"
(integer) 11
127.0.0.1:6379> get hello_world
"NO_OK_or_OK"
127.0.0.1:6379>
1.5.5 加减某个数值
incr会让key的值自动加1,命令:incr num
decr会让key的值自动加1,命令:decr num
incrby会让key的值自动加n,命令:incrby num n
decrby会让key的值自动加n,命令:incrby num n127.0.0.1:6379> set num 100
OK
127.0.0.1:6379> incr num
(integer) 101
127.0.0.1:6379> decr num
(integer) 100
127.0.0.1:6379> incrby num 100
(integer) 200
127.0.0.1:6379> decrby num 99
(integer) 101
127.0.0.1:6379>
Python操作Redis
02
2.1 安装redis模块pip install redis
2.2 插入和查询数据
1) 新值换旧值client.set('Python测试','失败!')
data1 = client.get('Python测试')
print(data1.decode())
2)新值无法换旧值client.set('python','Good!')
data2 = client.get('python')
client.set('python','GoodGood!',nx=True)
data3 = client.get('python')
print("data2的值:"+ data2.decode() + ",data3的值:" + data3.decode())
3)append附加值client.set('Redis','data')
data4 = client.get('Redis')
client.append('Redis',' base')
data5 = client.get('Redis')
print("data4的值:"+ data4.decode() + ",data5的值:" + data5.decode())
4) 加减某个数值client.set('num',1000)
data6 = client.get('num')
client.incr('num')
data7 = client.get('num')
client.decr('num')
data8 = client.get('num')
client.incr('num',100)
data9 = client.get('num')
client.decr('num',699)
data10 = client.get('num')
print( " data6的值:" + data6.decode() +
",\n data7的值:" + data7.decode() +
",\n data8的值:" + data8.decode() +
",\n data9的值:" + data9.decode() +
",\n data10的值:" + data10.decode() )
2.3 实战应用
1) 插入数据client.set('135492101','李同学')
client.set('135492102','安同学')
client.set('135492103','陈同学')
client.set('135492104','符同学')
client.set('135492105','邓同学')
client.set('135492106','曾同学')
client.set('135492107','陆同学')
client.set('135492108','吕同学')
client.set('135492109','关谷同学')
client.set('135492110','唐同学')
client.set('135492111','张同学')
client.set('135492112','诸葛同学')
2) 查询数据
3) 简单实例