• python使用笔记16--操作redis


    操作redis应先引入第三方模块

    执行以下命令

    pip install redis

    1.redis常用方法

     1 import redis
     2 #decode_responses=True将bytes转成字符串
     3 #Redis查出来的结果,默认是bytes类型的
     4 r = redis.Redis(host="127.0.0.1",port=6379,password="132131213&*",decode_responses=True)
     5 
     6 #字符串类型
     7 r.set('xxl_session','143432jlfdjldskfs',10)#插入一条数据,key,value,有效时长:默认为永久,单位为秒
     8 session = r.get('xxl_session')#获取指定的值
     9 print(session)
    10 #new_session = session.decode()#如果连接时没有设置decode_responses=True,需要手动将获取的值转换为字符串
    11 #print(new_session)
    12 #r.delete()#删除
    13 
    14 #hash类型
    15 r.hset('ssz_student','xiaoxiaolin','xiaoxiaolin')#插入数据
    16 r.hset('ssz_student','xiaoxiaolin111','xiaoxiaolin111')#插入数据
    17 r.hset('ssz_student','xiaoxiaolin222','xiaoxiaolin222')#插入数据
    18 #print(r.hget('ssz_student','xiaoxiaolin').decode())#获取数据
    19 print(r.hget('ssz_student','xiaoxiaolin'))#获取数据
    20 r.hdel('ssz_student','xiaoxiaolin222')#删除
    21 print(r.hgetall('ssz_student'))
    22 print(r.keys())#获取所有的key
    23 print(r.keys('*session*'))#模糊匹配
    24 print(r.type('xxl_session'))
    25 r.expire('ssz_student',50)#指定某个key的过期时间,单位是秒
    26 r.flushall()#清空所有数据库里面的key
    27 r.flushdb()#清空当前数据库里面的key
    28 
    29 d = {"a":1,"b":2,"c":3}
    30 r.hmset('ssz_student',d)#插入字典
    31 r.delete('ssz_student')#删除
    32 
    33 #插入的数据是一个文件夹里多个key
    34 r.set('girls:xxl','xxl')
    35 r.set('girls:wrm','wrm')

    2.redis小练习

     1 #将一个数据库中的所有数据迁移到另一个数据库中
     2 import redis
     3 r1 = redis.Redis(host="127.0.0.1",port=6379,password="342342&*",decode_responses=True)
     4 r2 = redis.Redis(host="127.0.0.1",port=6379,password="3242342&*",decode_responses=True,db=6)
     5 for key in r1.keys():#遍历数据库中所有的key
     6     key_type = r1.type(key)
     7     if key_type == 'string':#判断是字符串的
     8         key_value = r1.get(key)
     9         r2.set(key,key_value)
    10     elif key_type == 'hash':#判断是hash类型的
    11         key_value = r1.hmget(key)
    12         r2.hmset(key,key_value)
    13     else:
    14         pass
  • 相关阅读:
    bzoj3262 陌上花开
    bzoj2738 矩阵乘法
    bzoj3110 [Zjoi2013]K大数查询
    bzoj2527 [Poi2011]Meteors
    bzoj1758 [Wc2010]重建计划
    启动应用程序的Activty多种方式
    隐藏应用图标的多种方式
    Loading Large Bitmaps Efficiently
    java中的匿名内部类总结
    android listview addHeaderView和addFooterView的注意事项
  • 原文地址:https://www.cnblogs.com/cjxxl1213/p/12952641.html
Copyright © 2020-2023  润新知