Python学习笔记_Redis

Posted LazyRobbit

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python学习笔记_Redis相关的知识,希望对你有一定的参考价值。

一、Redis介绍

非关系型数据库:mongodb、redis

redis数据全部是存在内存里面的。

redis本身每秒支持30w次的读写,本身性能非常好,

redis重启后,数据会消失,持久性不好,但是可以设置重启前将redis里面的数据存到磁盘,重启后再取过来。

二、Redis用法

String类型的用法:

 

 1 import redis
 2 r = redis.Redis(host=xxx.xxx.xx.xxx,password=123456,db=0)  #端口号默认6379, redis默认有16个库,为1-15
 3 #增,key有唯一性
 4 r.set(6j,帅!)   #数据库里新增一个值
 5 r.set(nhy,帅!)   #数据库里新增一个值
 6 #修改也是set
 7 r.set(nhy,牛!)   #数据库里新增一个值
 8 #删:
 9 r.delete(nhy)  #删除
10 
11 r.setex(6j,哈哈哈,20)  #定时,设置key的失效时间20s,单位是秒
12  
13 print(r.get(6j))  #运行结果是byte格式,二进制格式,变回字符串用decode
14 print(r.get(6j))  #获取不存在的key,返回None
15 lj= r.get(6j)  #打印出来的结果格式不正确,是byte格式,需要decode一下
16 print(lj.decode())
17 print(r.get(6j).decode())
18 s = 呵呵
19 s.encode()  #把字符串转成二进制
20 nhy = bsdfserewf
21 nhy.decode()  #把bytes类型转成字符串
22 
23 
24 print(r.keys())  #获取所有的key
25 print(r.keys(n*)) #获取所有n开头的key
26 
27 设置文件夹:
28 r.set(天蝎座:lj,hehehe)  #生成天蝎座文件夹,key为lj,value为hehehe
29 r.set(session:6j,1毛钱)    #生成session文件夹,key为6j,value为1毛钱
30 
31 #删除所有key
32 for k in r.keys():
33     r.delete(k)

 

hash类型的用法:

除了string类型,还有哈希类型 hash,就和嵌套字典是一样的

# # {{zhangsan:xxx},{lisi:yyy}}

技术分享图片
 1 r.hset(stu_info,6j,1m6 100w存款)  #
 2 r.hset(stu_info,zhangsan,lang for homework) #
 3 r.hset(stu_info,lisi,find a dog to kit zhangsan) #
 4 
 5 print(r.hget(stu_info,zhangsan).decode())#指定大key和小key获取对应的数据
 6 print(r.hgetall(stu_info))  #获取里面所有的k和v,不能用decode,因为字典没有decode方法
 7 #要获取正常的字典,可以如下所示:
 8 stu_info = r.hgetall(stu_info)
 9 new_stu_info = {}
10 # print(stu_info.items())
11 for k,v in stu_info.items():
12     new_stu_info[k.decode()] = v.decode()
13     # print(k.decode)
14     # print(v.decode)
15 print(new_stu_info)
16 
17 r.hdel(stu_info,zhangsan)  #删除指定key
18 r.delete(stu_info)   #删除整个key
19 
20 #查看key的类型:
21 print(r.type(stu_info))
22 print(r.type(6j))
23 
24 print(r.ttl(stu_info))  #获取失效时间,None为永久,在redis可视化界面工具中展示为-1
25 # r.expire(‘aaa‘,100) #第一个key设置失效时间,对string、hash均生效
View Code

 

以上是关于Python学习笔记_Redis的主要内容,如果未能解决你的问题,请参考以下文章

Python学习笔记5-操作redis数据库redis

Python学习笔记__5章 模块

Python 学习笔记 - Redis

python学习笔记4-redis multi watch实现锁库存

20171124_Python学习六周五次课(11月24日)

python学习笔记012——pdb调试