新手学习python(十)操作数据库redis

数据库分为两类:1.关系型数据库: MySQL,Oracle,sql server,db2,sqlite   需要sql语句   数据存在磁盘上2.非关系型数据库:mongodb, redis   没有表结构   没有sql语句   使用get(‘k‘),set(‘xx‘)

说明:1.redis数据全部存在内存里面     2.redis本身性能是非常好的,每秒支持30w次的读写

import redisr=redis.Redis(host=‘xx.xx.xx.xx‘,password=‘aaaaa‘,db=0,port=6379)   #连接redis数据库,host是数据库ip#增删改查,针对string类型r.set(‘zhangsan‘,‘帅!‘)          #数据库里面新增一个值,‘zhangsan‘是key,‘帅‘是value#修改也是setr.delete(‘shangsan‘)             #删除r.setex(‘lisi_600‘,‘哈哈哈‘,600)  #设置key的失效时间,单位秒r.get(‘lisi‘).decode()           #获取的值是二进制,要转换成字符串lisi=r.get(‘lisi‘)print(lisi)                      #打印出来的是二进制数据

r.keys(‘qianwu‘)                 #获取到所有的keyr.set(‘天蝎座:mpp‘,‘hahaha‘)      #key是嵌套目录r.get(‘天蝎座:mpp‘)

---------------------------------------------#操作哈希类型数据 hash  嵌套字典for k in r.keys():                     #删除所有的key     r.delete(k) 

r.hset(‘stu_info‘,‘zuobian‘,‘1.8cm‘)   #新增hash类型数据r.hset(‘stu_info‘,‘zhangsan‘,‘浪‘)r.type(‘stu_info‘)                     #查看key是什么类型r.hget(‘stu_info‘,‘zhangsan‘).decode() #指定大key和和小key获取对应的数据

stu_info=r.hgetall(‘stu_info‘)         #获取里面所有的k和vnew_stu_info={}for k,v in stu_info.items():           #从redis获取的k,v放入字典中     new_stu_info[k.decode()]=v.decode()print(new_stu_info)

r.hdel(‘stu_info‘,‘zhangsan‘)          #删除指定keyr.delete(‘stu_info‘)                   #删除整个keyr.ttl(‘lisi_600‘)                      #获取key的失效时间r.expire(‘aaa‘,100)                    #对一个key设置失效时间,哈希,string都可用

======= 小练习 =========
1.连接数据库mysql,游标类型要用pymysql.cursors.DictCour2.查到数据库里所有数据   [ {"id":1,"passwd":"59787dd4f94034a6145275e48ad09447","username":"zhangsan","is_admin":1}]3.循环这个list,取到username,把username当做key4.把这个小字典转成json,存到redis里

import pymysql,json,redis

r=redis.Redis(host=‘yy.yy.yy.yy‘,password=‘123456‘,db=0,port=6379)   #连接redis数据库coon=pymysql.connect(host=‘xx.xx.xx.xx‘,user=‘aaa‘,passwd=‘12345678‘,db=‘aaa‘,charset=‘utf8‘)   #连接pymysqlcur=coon.cursor(pymysql.cursors.DictCursor)    #游标类型用字典类型cur.execute(‘select * from my_user;‘)          #执行查询语句all_data=cur.fetchall()                        #获取所有结果for data in all_data:    k=data.get(‘username‘)                     #获取用户名    r.hset(‘stu_info_tt‘,k,json.dumps(data))   #写入用户名和数据,用json类型cur.close()coon.close()


原文地址:https://www.cnblogs.com/bainbian1234/p/9190631.html

时间: 2024-10-09 06:40:38

新手学习python(十)操作数据库redis的相关文章

python学习笔记-day7-【python操作数据库】

上次说到了Python操作数据库,这里继续补充python操作数据库,如何获取数据表里的所有字段值以及将数据导出来到excel里,作为excel表表头. 一.上次说到封装一下mysql的操作 1.装一下函数执行数据库操作 #封装一下函数执行数据库操作def my_db(host,user, passwd, db,sql, port=3306, charset='utf8'): import pymysql conn = pymysql.connect(user=user,host=host,po

MySQL---连接器(python如何操作数据库媒介,基于python语言)

MySQL — 连接器 连接器的概念 它们往往是一类Python包,或者是一类已经写好的Python库.这些库提供了我们Python去连接数据库服务器的基本功能. ? 既然它是一个包,那么我们首先学会导入这个包 #! /usr/bin/env python3 # coding: utf-8 ? from mysql import connector print('导入成功') 执行以上代码 $ python3 test_connector.py 导入成功 表示我们成功导入了相关的包或者模块 连接

[python][django学习篇][6]操作数据库

查询(取)数据 >>> Category.objects.all() <QuerySet [<Category: Category object>]> >>> Tag.objects.all() <QuerySet [<Tag: Tag object>]> >>> Post.objects.all() <QuerySet [<Post: Post object>]> >>

python之操作数据库

一.操作mysql 首先,python3操作mysql.需要安装第三方模块pymysql,在python2中则使用的是pysqldb.这里使用pymysql. 直接使用pip install pymysql或python3 setup.py install安装. 1.1连接mysql import pymysql #数据库连接信息 host='127.0.0.1' user='db' password='123456' #密码只能是字符串 db='db' port=3306#端口号只能写int类

python 连接操作数据库

一.下面我们所说的就是连接mysql的应用: 1.其实在python中连接操作mysql的模块有多个,在这里我只给大家演示pymysql这一个模块(其实我是感觉它比较好用而已): pymysql是第三方的一个模块,需要我们自己安装,在这里顺便给大家普及一下安装第三方模块的知识:首先,如果我们在windows上安装的话,需要先安装python解释器,然后里面自带 了pip模块(我们安装第三方模块,都是需要这个命令去安装的),配置完环境变量之后我们就可以直接在dos命令行中执行要安装的模块了,如下:

新手学习嵌入式十大“不要”

随着嵌入式逐渐走入我们的生活,越来越多的人加入了学习嵌入式的大军.但是,在学习嵌入式之前难免会有新手期阶段.作为嵌入式工程师你应该了解到有哪些东西是你要注意的地方的,下面就给大家带来学习嵌入式过程中的十大"不要": 不要第一句话就说:给个代码吧!你应该想想为什么.当你自己想出来再参考别人的提示,你就知道自己和别人思路的差异. 初学者请不要看太多的书那会误人子弟的.先找一本好书系统的学习.很多人用了很久都是只对部分功能熟悉而已,不系统还是不够的. 看帮助.不要因为很难,而自己又是初学者所

新手学习Python时常见的错误

在运行或编写一个程序时常会遇到错误异常,这时Python会给你一个错误提示类名,告诉出现了什么样的问题(python是面向对象语言,所以程序抛出的异常也是类).能很好的理解这些错误提示类名所代表的意思,可以帮助你在最快的时间内找到问题所在,从而解决程序上的问题是非常有帮助的. 搜集了一些python最重要的内建异常类名,并做了简单的介绍: AttributeError:属性错误,特性引用和赋值失败时会引发属性错误 NameError:试图访问的变量名不存在 SyntaxError:语法错误,代码

新手学习python(五)函数

1)定义: 函数是指将一组语句的集合通过一个名字(函数名)封装起来,要想执行这个函数,只需调用其函数名即可. 2)使用函数的好处:1.简化代码:2.提高代码的复用性:3.代码可扩展 3)举个例子: def sayhello():    #使用关键字def定义函数,后面是函数名 print('hello world')   #函数体 sayhello()   #调用函数 4)参数传递 def calc(a,b):   #a,b为形参,形式参数 res=a*b print('%s * %s=%s'%

新手学习python(三)字典相关操作方法

1)字典相关操作方法 infos ={'name':'张三','sex':'男','addr':'广州市','age':'20'} #查找 infos.get('name')   #获取name对应的值 infos.['sex']     #获取sex对应的值, infos.get('phone')  #取不到这个key的话,就是None infos.get('phone',110)   #如果取不到这个值,默认就是110 infos['blood_type']   #如果key不存在,则会报错