由于其他人已经给出了基本答案,我想补充一些。
以下是REDIS 中的命令,用于使用HashMap/Dictionary/Mapping 类型值执行基本操作。
- HGET => 返回传递的单个键的值
- HSET => 设置/更新单个键的值
- HMGET => 返回传递的单个/多个键的值
- HMSET => 设置/更新多个键的值
- HGETALL => 返回映射中的所有(键、值)对。
以下是它们各自在redis-py库中的方法:-
- HGET => hget
- HSET => hset
- HMGET => hmget
- HMSET => hmset
- HGETALL => hgetall
如果映射不存在,上述所有 setter 方法都会创建映射。
如果映射/映射中的键不存在,上述所有 getter 方法都不会引发错误/异常。
Example:
=======
In [98]: import redis
In [99]: conn = redis.Redis('localhost')
In [100]: user = {"Name":"Pradeep", "Company":"SCTL", "Address":"Mumbai", "Location":"RCP"}
In [101]: con.hmset("pythonDict", {"Location": "Ahmedabad"})
Out[101]: True
In [102]: con.hgetall("pythonDict")
Out[102]:
{b'Address': b'Mumbai',
b'Company': b'SCTL',
b'Last Name': b'Rajpurohit',
b'Location': b'Ahmedabad',
b'Name': b'Mangu Singh'}
In [103]: con.hmset("pythonDict", {"Location": "Ahmedabad", "Company": ["A/C Pri
...: sm", "ECW", "Musikaar"]})
Out[103]: True
In [104]: con.hgetall("pythonDict")
Out[104]:
{b'Address': b'Mumbai',
b'Company': b"['A/C Prism', 'ECW', 'Musikaar']",
b'Last Name': b'Rajpurohit',
b'Location': b'Ahmedabad',
b'Name': b'Mangu Singh'}
In [105]: con.hget("pythonDict", "Name")
Out[105]: b'Mangu Singh'
In [106]: con.hmget("pythonDict", "Name", "Location")
Out[106]: [b'Mangu Singh', b'Ahmedabad']
我希望,它能让事情更清楚。