redis_语法_01

redis

配置

里面可以配置端口与bind的IP,如果需要远程连接的话,把bind那行注释掉即可。

数据类型

主要有以下几种类型:字符串、哈希、列表、集合、有序集合

主要操作

1.字符串主要操作
	*set key value
	*get key
	*mset key1 value1 key2 value2
	*mget key1 key2
	*strlen key #获取key存储的value长度
	*incr/decr key #将key对应的value +1/-1,要求value必须为整数。
	*incrby/decrby key  number#将key对应的value +number/-number,要求value必须为整数。
	
2.键的操作
	*type key #查看key的类型
	*del key	#删除key
	*ttl key	#查看key的过期时间
	*exists key	#查看key是否存在

3.哈希主要操作
*Redis hash 是一个string类型的field和value的映射表,hash特别适合用于存储对象。
*个人理解就是一张hash表可以存储k-v对,每个hash表最大能存2*31-1个key-value。
	*hset table-name key value  
	*hmset table-name key1 key2
	*hget table-name key
	*hmget table-name key1 key2 #获取多个key值
	*hdel table-name key
	*hgetall table-name #获取key中所有记录。
	*hexists table-name key #是否存在该key
	*hlen table-name #获取该表k-v数量
	*hkeys table-name #获取该表的key值
	*hvals table-name #获取该表的所有value值
3.列表主要操作
*Redis列表是简单的字符串列表,按照插入顺序排序。你可以添加一个元素到列表的头部(左边)或者尾部(右边) 
*这个列表中的值可以是重复的。
	*lpush/rpush list-name value1 value2
	*lpop list-name #弹出列表头元素
	*rpop list-name #弹出列表尾部元素
	*llen list-name #列出列表长度
	*lindex list-name index #获取列表索引值对应的value
	*lrem list-name count value #删除列表中的value值 count 为value的数量。
	*lset list-name index value #设置下标为index的值为value
	
4.集合的主要操作
*Redis 的 Set 是 String 类型的无序集合。集合成员是唯一的,这就意味着集合中不能出现重复的数据。 
*复杂度:O(1)
	*sadd set-name value1 value2 ... #添加一个或多个元素
	*scard set-name #获取集合的数量
	*sdiff set-name set-name1 #比较两个集合内容,返回不一致的
	*sdiffstore destination set-name set-name1 #返回不一致的并存入destination
	*smembers set-name #获取集合内所有元素
	*sismember set-name value #集合内是否有value元素
	*smove source destination value #将集合source value 移到 destination
	*spop set-name #移除并返回集合的一个随机元素
	*srem set-name value #删除集合中元素
	
5.有序集合
*每个元素都会关联一个double类型的score,表示权重,通过权重将元素从小到大排序
	*zadd jh-table score1 value1 [score2 value2...] #增加s-v 到jh-table中
	*zcard jh-table	#计算数量
	*zscore jh-table value1 #获取value1的 score值
	*zcount jh-table min max #获取score在min和max中的集合的个数
	*zrange jh-table start stop #列出范围在start-stop内的元素
	

发布/订阅

*subsribe channel #订阅频道
	*publish channel message #向指定频道发送信息
	*unsubscribe channel 

python连接redis

#coding=utf-8

	'''
	Created on 2018年6月11日

	@author: BH Wong
	'''
	import redis

	class redisHelper():
		def __init__(self,host,port):
			self.host = host
			self.port = port
			
		def connect(self):
			r = redis.Redis(host = self.host,port = self.port,db = 0)
			return r
		
		def setRedis(self,conn,key,value):
			conn.set(key,value)
			
		def getRedis(self,conn,key):
			return conn.get(key)

	if __name__ == '__main__':
		redisDemo = redisHelper('192.168.164.135',6379)
		r = redisDemo.connect()
		redisDemo.setRedis(r, 'name', 'wangran')
		res = redisDemo.getRedis(r, 'name')
		print(res)

 

  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值