我们可以将Redis中的Hashes类型看成具有String Key和String Value的键值对容器。类似python中的dict,javascript的jaon,java 的map,每一个Hash可以存储4294967295个键值对。

 # encoding:utf-8
import redis
import time def main():
"""
redis-cli -h 127.0.0.1 -a test321
"""
redis_host = "127.0.0.1"
redis_password = "test321"
redis_cli = redis.StrictRedis(host=redis_host, password=redis_password)
try:
key = "TEST_KEY_1484"
# string
print redis_cli.delete(key)
print redis_cli.hset(key, "test1", 1) # 设置 key={test1:1}
print redis_cli.hget(key, "test1") # 获取key[test1]
print redis_cli.hexists(key, "test1") # 是否存在key[test1]
print redis_cli.hset(key, "test2", 2) # 设置 key={test2:2}
print redis_cli.hlen(key) # 查看key下的键值对数量
print redis_cli.hdel(key, "test1", "test2") # 批量删除key下的键,返回实际删除的键数量
print redis_cli.hlen(key) # 查看key下的键值对数量
print redis_cli.hexists(key, "test1") # 是否存在key[test1]
print redis_cli.hsetnx(key, "test1", 1) # 设置 key={test1:1}
print redis_cli.hsetnx(key, "test1", 1.11) # 如果key[test1]已存在设置失败
print redis_cli.hget(key, "test1") # 获取key[test1]
print redis_cli.hincrby(key, "test1", 2) # 设置 key[test1] 累加2
print redis_cli.hget(key, "test1") # 获取key[test1]
print redis_cli.hset(key, "test2", 2) # 设置 key={test2:2}
print redis_cli.hgetall(key) # 获取key,得到dict对象
print redis_cli.hkeys(key) # 获取key下的所有键,得到list对象
print redis_cli.hvals(key) # 获取key下的所有值,得到list对象
print redis_cli.hmget(key, "test1", "test2") # 批量获取key下的指定键,得到list对象
print redis_cli.hmset(key, {"test3": 3, "test4": 4}) # 批量设置键值,无则添加,有则覆盖,
print redis_cli.hgetall(key)
except Exception as e:
print e.message
finally:
print redis_cli.delete(key)
return None if __name__ == "__main__":
main()

github:https://github.com/luohuaizhi/test/blob/master/testRedisDict.py

python 对redis 键值对的操作的更多相关文章

  1. redis键值操作

    1.1. redis键值操作 1.1.1. keys patten 查询相应的key 可以精确的查,也可以模糊的查 1.1.1.1. 通配符:* ? [] 在redis里,模糊查询key的时候有3个通 ...

  2. redis 键值对 有效期设置

    redis 键值对 有效期设置redis中可以使用expire命令设置一个键的生存时间, 到时间后redis会自动删除它<-----> 类比于javaweb系统临时数据 过期删除功能 ex ...

  3. Python 字典(键值对)

    Python 字典(键值对) 创建字典 特性:字典中的键不能变,而且唯一 格式:变量名={"键1":值1,"键2":值2} 函数 作用 dict() 强制转换为 ...

  4. mybatis 08: 返回主键值的insert操作 + 利用UUID获取字符串(了解)

    返回主键值的insert操作 应用背景 图示说明 在上述业务背景下,涉及两张数据表的关联操作:用户表 + 用户积分表 传统操作:在对用户表执行完插入语句后,再次查询该用户的uid,将该uid作为外键, ...

  5. Redis 使用 Eval 多个键值自增操作示例

    在PHP上使用Redis 给多个键值进行自增,示例如下: $set['money'] = $this->redis->hIncrByFloat($key, $hour .'_money', ...

  6. 7.Redis键值对数据库

    1.Redis的安装以及客户端连接 安装:apt-get install redis-server 卸载:apt-get purge --auto-remove redis-server 启动:red ...

  7. Redis键值设计(转载)

    参考资料:https://blog.csdn.net/iloveyin/article/details/7105181 丰富的数据结构使得redis的设计非常的有趣.不像关系型数据库那样,DEV和DB ...

  8. Redis 键值数据类型及基本操作

    到目前为止,Redis 支持的键值数据类型如下: 字符串(String) 哈希(Map) 列表(list) 集合(sets) 有序集合(sorted sets)   1. String 字符串类型 s ...

  9. Spark 键值对RDD操作

    键值对的RDD操作与基本RDD操作一样,只是操作的元素由基本类型改为二元组. 概述 键值对RDD是Spark操作中最常用的RDD,它是很多程序的构成要素,因为他们提供了并行操作各个键或跨界点重新进行数 ...

随机推荐

  1. xshell xftp使用

    1.xftp传输的中文上去乱码,是因为传输时使用GB2312,而服务端不是GB2312 使用UTF-8编码上传即可

  2. PHP readdir() 函数

    打开一个目录,读取它的内容,然后关闭: <?php$dir = "/images/"; // Open a directory, and read its contentsi ...

  3. 复位和时钟控制(RCC)

    一.系统复位 复位除了部分RCC寄存器和备份区域以外的其他所有的寄存器: 来源: NRST引脚上的低电平(外部复位) WWDG计数结束 IWDG计数结束 软件复位(通过NVIC) 低电压管理的复位 电 ...

  4. leetcode骚题目列表

    114,二叉树原地前序遍历转链表 令人不舒服的空间限制 4,O(logn)寻找两个数组的中位数 感觉诡异又很其妙的二分 279,判断一个数可拆成最少几个平方数的和 有O(n)解法,如果把sqrt视为O ...

  5. POJ 3904 (莫比乌斯反演)

    Stancu likes space travels but he is a poor software developer and will never be able to buy his own ...

  6. Unicode数据类型的是是非非(转)

    转:http://cio.chinabyte.com/344/9002344.shtml 在SQL Server数据库中,数据类型主要分为两类,分别为Unicode数据类型与非Unicode数据类型. ...

  7. tomcat7以下线程控制

    web server允许的最大线程连接数还受制于操作系统的内核参数设置,通常Windows是2000个左右,Linux是1000个左右. 1.编辑tomcat安装目录下的conf目录下的server. ...

  8. Use Git Credential Managers to Authenticate to Azure Repos

    https://docs.microsoft.com/en-us/azure/devops/repos/git/set-up-credential-managers?view=azure-devops ...

  9. centos svn 安装

    #检查是否安装了低版本的SVN [root@zck /]# rpm -qa subversion #卸载旧版本SVN [root@zck modules]# yum remove subversion ...

  10. HTML5: HTML5 内联 SVG

    ylbtech-HTML5: HTML5 内联 SVG 1.返回顶部 1. HTML5 内联 SVG HTML5 支持内联 SVG. 什么是SVG? SVG 指可伸缩矢量图形 (Scalable Ve ...