python基础----redis模块
数据库 关系型数据 例如mysql,有表还有约束条件等
非关系型 k-v形式 memcache 存在内存中 redis 存在内存 mongodb 数据存在磁盘
import redis
#string类型
#1.连接redis
r=redis.Redis(host='200.149.208.16',port=6379,password='',db=1)
#set 写数据
r.set('lsy_token','2018-hh')#set数据,写数据
#get获取数据
print(r.get('lsy_token').decode())#redis里取出的数据都是bytes类型,所以用decode转化成字符串
#delete删除数据
r.delete('lsy_token')#删除
#setex设置失效时间
r.setex('lsy_token','2018-hh',20)#指定key的失效时间,单位是秒
#set get delete setex 都是针对string类型的 k-v #hash类型
#hset新增数据
r.hset('lsy_session','zhangsan','')
r.hset('lsy_session','lisi','')
r.hset('lsy_session','wangwu','')
r.hset('lsy_session','liuli','')
#hget获取数据
print(r.hget('lsy_session','').decode())#传两个值,获得数据
redis_data=r.hgetall('lsy_session') #获取hash类型里的所有数据
#字典没有decode类型,怎么办---迭代
all_data={}
for k,v in redis_data.items():#把hash类型所有的数据转化成正常的字典
k=k.decode()
v = v.decode()
all_data[k]=v
print(redis_data)
print(all_data)
#hash类型没有过期时间
#设置文件分层
r.set('szz:homeword:lsy','没交')#设置文件夹分类,层级,
r.set('szz:homeword:张三','交了')
r.set('李四','交了') print(r.keys())#打印所有的key
print(r.keys('lsy*'))#获取以lsy开头的key
print(r.type('lsy_session'))#获取key的类型
封装redis函数
import redis
def op_redis(host,password,k,v=None,port=6379,db=0):
r=redis.Redis(host=host,password=password,port=port,db=db)
if v:
r.set(k,v)#有传key就说明是set操作
res='ok'
else:
res=r.get(k)
if res:#判断有没有get到数据
res=res.decode()#没有传key就说明是get操作,如果传的key不存在返回None,None没有decode
else:
res=None
return res
python基础----redis模块的更多相关文章
- Python基础-redis模块使用
redis是一个数据库,他的数据全都是存放在内存里面的,redis每秒能支持30w次的读写,存放有两种格式,一种string类型,一种是hash类型 一,操作string类型 r=redis.Redi ...
- python基础——第三方模块
python基础——第三方模块 在Python中,安装第三方模块,是通过包管理工具pip完成的. 如果你正在使用Mac或Linux,安装pip本身这个步骤就可以跳过了. 如果你正在使用Window ...
- python基础——使用模块
python基础——使用模块 Python本身就内置了很多非常有用的模块,只要安装完毕,这些模块就可以立刻使用. 我们以内建的sys模块为例,编写一个hello的模块: #!/usr/bin/env ...
- 二十五. Python基础(25)--模块和包
二十五. Python基础(25)--模块和包 ● 知识框架 ● 模块的属性__name__ # my_module.py def fun1(): print("Hello& ...
- python 基础之 模块
Python 基础之模块 一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 就是一个python文件中定义好了类和方法,实现了一些功能,可以被别的python文 ...
- Python 连接 redis 模块
redis 模块使用可以分类为: 连接方式 连接池 操作 String操作 Hash操作 List操作 Set操作 Sort Set操作 管道 发布订阅 (1)操作模式 redis提供两个类Redis ...
- python之redis模块
一.redis简介 redis是一个key-value存储系统.和Memcached类似,它支持存储的value类型相对更多,包括string(字符串).list(链表).set(集合).zset(s ...
- 【Python之路】第六篇--Python基础之模块
模块,用一砣代码实现了某个功能的代码集合. 类似于函数式编程和面向过程编程,函数式编程则完成一个功能,其他代码用来调用即可,提供了代码的重用性和代码间的耦合.而对于一个复杂的功能来,可能需要多个函数才 ...
- 周末班:Python基础之模块
什么是模块 什么是模块? 常见的场景:一个模块就是一个包含了python定义和声明的文件,文件名就是模块名字加上.py的后缀. 但其实import加载的模块分为四个通用类别: 1 使用python编写 ...
随机推荐
- Python 字节码bytecode
字节码bytecode python把源码文件编译成字节码文件,存放在__pycahe子目录内,用.pyc结尾.之后如果不再修改源码文件,运行时则使用*.pyc文件编译成机器码,这样不但运行速度快,而 ...
- css引用优先级
/***************************************css注意事项*******************************************/ 浏览器优先级:设 ...
- python_反射:动态导入模块
官方推荐方法: test_mod.py def hi(): print('Hi') test.py import importlib q = importlib.import_module('test ...
- 09—mybatis注解配置join查询
今天来聊mybatis的join查询,怎么说呢,有的时候,join查询确实能提升查询效率,今天举个left join的例子,来看看mybatis的join查询. 就不写的很细了,把主要代码贴出来了. ...
- node.js之文件读写模块,配合递归函数遍历文件夹和其中的文件
fs.stat会返回文件夹会文件的属性 var fs = require('fs'); var wenwa = function (pathname,callback) { fs.stat(pathn ...
- zhengrui集训笔记2
Day_6 计算几何 点积\Large 点积点积 叉积\Large 叉积叉积 极角\Large 极角极角 < π\piπ :叉积判断 else :atan2 旋转\Large 旋转旋转 左乘第一 ...
- 13、生命周期-InitializingBean和DisposableBean
13.生命周期-InitializingBean和DisposableBean InitializingBean接口 package org.springframework.beans.factory ...
- 可以粘贴Word文档中图片的编辑器
Chrome+IE默认支持粘贴剪切板中的图片,但是我要发布的文章存在word里面,图片多达数十张,我总不能一张一张复制吧?Chrome高版本提供了可以将单张图片转换在BASE64字符串的功能.但是无法 ...
- Gradle 如何配置将编译的 JAR 发布到 Archiva 中
有时候我们希望将我们的jar 开发包发布到 Archiva 中. 如何配置 Gradle 的编译脚本呢? 首先你需要启用 Gradle 的 Maven-publish 插件. plugins { id ...
- Gym - 102307C Common Subsequence 搞不懂的dp
Gym - 102307C Common Subsequence 题意:给你两个相同长度的DNA序列,判断这两个的最长公共子序列长度是不是0.99*n,n为序列的长度(n<=1e5). 嗯,正常 ...