Redis非关系型数据库,数据存放在计算机内存中,无SQL语句。
Redis中有多种数据类型,比较常用的数据类型是string类型和hash类型。
平时我们使用RedisDesktopManager来对Redis中的数据进行可视化管理 import redis

r = redis.Redis(host='127.0.0.1',password='HK139bc&*',db=14,port=6379) print("============redis string类型=============")
#1、新增
r.set("zhangsan","张三爱打游戏!")
r.set("lisi","李四爱打游戏!")
r.set("wangwu","王五爱打游戏!") #2、修改
r.set("zhangsan","张三的爷爷是红军战士!")
r.set("lisi","李四的爷爷是红军战士!")
r.set("wangwu","王五的爷爷是红军战士!") #3
# 数据不存在时,创建新key,同时设置key的失效时间,时间是秒
#数据存在时,修改key,同时设置key的失效时间,时间是秒
#r.setex("sunhonglei","孙红雷的爷爷是红军战士",100)
r.expire("sunhonglei",300) #4、查询
val = r.get("sunhonglei")
if val:
print(val.decode()) #获取key,keys()返回的是一个二进制格式的数据,需要decode()解码才能识别
print("匹配【任意字符开头,s结尾】的key:",r.keys('*s'))
print("匹配【s开头,任意字符结尾】的key:",r.keys('s*'))
print("返回包含【s】的key:",r.keys("*s*"))
print("返回所有key:",r.keys("*"))
print("返回所有key:",r.keys()) #get()返回的是一个二进制格式的数据,需要decode()解码才能识别
r.set('天蝎座:fsy','湖南人')
print(r.get("天蝎座:fsy").decode()) #5、删除
# r.delete("zhangsan")
# r.delete("lisi",'wangwu')
#删除所有的key
# for k in r.keys():
# r.delete(k) print("========redis hash类型=========")
#新增
r.hset('stu_info','甜甜姐','真漂亮')
r.hset('stu_info','春天','百花齐放')
r.hset('stu_info','夏天','太热了,狗儿猫儿热的不停地吐舌头') #修改
r.hset('stu_info','甜甜姐','真漂亮,年轻就是美')
r.hset('stu_info','春天','百花齐放,色彩斑斓')
r.hset('stu_info','夏天','太热了,狗儿猫儿热的不停地吐舌头,娃娃们往地里跑,抱回一个个的大西瓜,啃个不停') #查询
print("指定大key和小key获取对应的数据:",r.hget('stu_info','甜甜姐').decode())
#获取所有的key和value:
my_dic = r.hgetall("stu_info")
for k,v in my_dic.items():
print(k.decode(),v.decode()) new_stu_info = {}
for k,v in my_dic.items():
new_stu_info[k.decode()] = v.decode()
print(new_stu_info) #查看key是什么类型的
print(r.type('stu_info')) #删除
# print("删除指定key:",r.hdel('stu_info','春天'))
# print("删除整个key",r.delete('stu_info'))
r.expire("stu_info",120) print("===========redis hash练习代码===========")
#1、连数据库,查到数据库里面所有的数据,游标类型要用pymysql.curosrs.DictCour
#2、查到所有数据 [ {"id":1,"passwd":"49487dd4f94008a6110275e48ad09448","username":"niuhayang","is_admin":1}]
#3、循环这个list,取到usernamer,把username当做key
#4、再把这个小字典转成json,存进去就ok。
import pymysql,json,redis
r = redis.Redis(host='127.0.0.1',password='HK139bc&*',db=13,port=6379)
conn = pymysql.connect(host='127.0.0.1',user='jxz',passwd='123456',db='jxz',charset='utf8')
cur = conn.cursor(cursor=pymysql.cursors.DictCursor)
cur.execute('select * from my_user limit 5;')
all_data = cur.fetchall()
print(all_data)
for data in all_data:
k = data.get('username')
r.hset('stu_info',k,json.dumps(data))
r.expire("stu_info",300)
cur.close()
conn.close()

Python【操作Redis数据库】的更多相关文章

  1. redis python 操作 Python操作Redis数据库

    原文章于此:https://www.cnblogs.com/cnkai/p/7642787.html 有个人修改与改正 Python操作Redis数据库   连接数据库 StrictRedisfrom ...

  2. python学习笔记(十六)python操作redis数据库

    Redis是一个key-value存储系统,它支持丰富的数据类型,如:string.list.set.zset(sorted set).hash. Redis特点 Redis以内存作为数据存储介质,所 ...

  3. Python操作Redis数据库

    连接数据库 StrictRedis from redis import StrictRedis # 使用默认方式连接到数据库 redis = StrictRedis(host='localhost', ...

  4. Python之操作redis数据库

    使用redis模块 一.操作redis 1.添加信息 (1)直接建key-value信息: 右键-Add New Key,手动添加key和value 右键-Console,打开控制台,写入命令 (2) ...

  5. Python学习笔记(五)之Python操作Redis、mysql、mongodb数据库

    操作数据库 一.数据库 数据库类型主要有关系型数据库和菲关系型数据库. 数据库:用来存储和管理数的仓库,数据库是通过依据“数据结构”将数据格式化,以记录->表->库的关系存储.因此数据查询 ...

  6. Python 操作Redis 转载篇

    Python操作Redis数据库 连接数据库 StrictRedis from redis import StrictRedis # 使用默认方式连接到数据库 redis = StrictRedis( ...

  7. 数据库之redis篇(3)—— Python操作redis

    虽然前面两篇已经说了redis的一些配置安装什么的,篇幅有点长,可能看完了也不知道怎么操作,这里再浓缩一下: 什么是redis redis完全开源免费的,遵守BSD协议,是一个高性能的非关系型key- ...

  8. python操作三大主流数据库(14)python操作redis之新闻项目实战②新闻数据的展示及修改、删除操作

    python操作三大主流数据库(14)python操作redis之新闻项目实战②新闻数据的展示及修改.删除操作 项目目录: ├── flask_redis_news.py ├── forms.py ├ ...

  9. python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用

    python操作三大主流数据库(12)python操作redis的api框架redis-py简单使用 redispy安装安装及简单使用:https://github.com/andymccurdy/r ...

  10. redis缓存数据库及Python操作redis

    缓存数据库介绍  NoSQL(NoSQL = Not Only SQL ),意即“不仅仅是SQL”,泛指非关系型的数据库,随着互联网web2.0网站的兴起,传统的关系数据库在应付web2.0网站, 特 ...

随机推荐

  1. Scrum Meeting 11.11

    成员 今日任务 明日计划 用时 徐越 学习UI设计并重构上传下载界面     赵庶宏       薄霖 UI代码更新     卞忠昊 Xfermode与PorterDuff     武鑫 界面设计:独 ...

  2. Restful风格wcf调用

    文章:Restful风格wcf调用 作者相当于把wcf服务改造成rest风格. Restful风格wcf调用2——增删改查 这篇文章在第一篇的基础上,进行了优化. Restful风格wcf调用3——S ...

  3. cobbler技术详解(是PXE二次详解)

    Cobbler是PXE的二次封装,使用Python语言开发, 可以用来快速建立 Linux 网络安装环境,它已将 Linux 网络安装的技术门槛,从大专以上文化水平,成功降低到初中以下,连补鞋匠都能学 ...

  4. 初识asp

    1.ASP(Active Server Pages 动态服务器页面)是一种生成动态交互性网页的强有力工具 <!DOCTYPE html> <html> <body> ...

  5. linux 下安装 nodejs

    1. linux 下下载 wget http://cdn.npm.taobao.org/dist/node/v10.14.1/node-v10.14.1-linux-x64.tar.xz 2. 解压缩 ...

  6. vue-cli配置axios

    1. npm install axios --save 2. npm install @type/axios --save-dev(使用ts编写的需要此声明文件,升级的axios好像不需要了,已经自带 ...

  7. wai

    外键的过滤是怎么做的, 一个class有两个外键A和B,其中A又是B的外键,在这种情况下,比如A选择了学校之后,可否在B中过滤出A学校的所有的专业?也就是说在选择的时候能不能按照已经填好的一个选项来选 ...

  8. UVAlive3523_Knights of the Round Table

    圆桌骑士.有的骑士之间是相互憎恨的,不能连坐,需要安排奇数个骑士围着桌子坐着,大于3个,求哪些骑士不可能安排到座位. 根据给定的关系,如果两个骑士之间没有憎恨关系,那么连边.最终就是求有多少个点无法位 ...

  9. 018 final 关键字的用途

    final关键字的含义 final在Java中是一个保留的关键字,可以声明成员变量.方法.类以及本地变量.一旦你将引用声明作final,你将不能改变这个引用了,编译器会检查代码,如果你试图将变量再次初 ...

  10. python模拟浏览器爬取数据

    爬虫新手大坑:爬取数据的时候一定要设置header伪装成浏览器!!!! 在爬取某财经网站数据时由于没有设置Header信息,直接被封掉了ip 后来设置了Accept.Connection.User-A ...