pip 安装 redis
安装 redis-py
库
pip install redis
Pycharm 检查:
打开 PyCharm
- 打开项目的设置:
- 在 Windows 上,点击
File
>Settings
。 - 在 macOS 上,点击
PyCharm
>Preferences
。
- 在 Windows 上,点击
- 导航到项目解释器:
- 查看已安装的包:
- 在右侧,你应该会看到一个已安装的包列表。在这个列表中,找
redis
是否存在。
- 在右侧,你应该会看到一个已安装的包列表。在这个列表中,找

或者通过PyCharm 的底部,有一个 Terminal
面板来检查:pip list

编写 Python 代码与单台 Redis 交互
示例 1:连接到 Redis
import redis
# 连接到 Redis 服务器(默认在 localhost:6379)
r = redis.Redis(host='localhost', port=6379, db=0)
# 测试连接
print(r.ping()) # 如果连接成功,输出 True
示例 2:操作字符串
# 设置值
r.set('key', 'value')
# 获取值
value = r.get('key')
print(value.decode('utf-8')) # 输出: value
示例 3:操作哈希
# 设置哈希
r.hset('user:1000', mapping={'name': 'Alice', 'age': 30})
# 获取哈希字段
name = r.hget('user:1000', 'name')
print(name.decode('utf-8')) # 输出: Alice
# 获取整个哈希
user_info = r.hgetall('user:1000')
for field, value in user_info.items():
print(f"{field.decode('utf-8')}: {value.decode('utf-8')}")
示例 4:操作列表
# 向列表添加元素
r.rpush('mylist', 'element1')
r.rpush('mylist', 'element2')
# 获取列表的所有元素
mylist = r.lrange('mylist', 0, -1)
print([item.decode('utf-8') for item in mylist]) # 输出: ['element1', 'element2']
实例 5:操作集合
# 向集合添加元素
r.sadd('myset', 'member1')
r.sadd('myset', 'member2')
r.sadd('myset', 'member3')
# 获取集合中的所有元素
myset_members = r.smembers('myset')
print([member.decode('utf-8') for member in myset_members]) # 输出: ['member1', 'member2', 'member3']
# 检查某个元素是否在集合中
is_member = r.sismember('myset', 'member2')
print(is_member) # 输出: True
# 从集合中移除元素
r.srem('myset', 'member3')
# 获取集合的当前成员
current_members = r.smembers('myset')
print([member.decode('utf-8') for member in current_members]) # 输出: ['member1', 'member2']
# 获取集合的数量
count = r.scard('myset')
print(count) # 输出: 2
示例 6:使用有序集合
# 添加有序集合元素
r.zadd('myzset', {'member1': 1, 'member2': 2})
# 获取有序集合中的元素
members = r.zrange('myzset', 0, -1, withscores=True)
for member, score in members:
print(f"{member.decode('utf-8')} : {score}") # 输出: member1 : 1.0, member2 : 2.0
关闭连接
完成了与 Redis 的交互后,可以显式地关闭连接,尽管在脚本结束时会自动关闭。
r.close()
Python连接到 Redis 集群
连接到 Redis 集群的方式与连接到单个 Redis 实例类似,但需要使用支持集群模式的客户端库。在 Python 中,redis-py
库自版本 2.10.0 以来支持集群模式,可以用于与 Redis 集群进行交互。
1. 安装 redis-py
库
pip install redis
2. 连接到 Redis 集群
使用 RedisCluster
类连接到 Redis 集群。你需要提供集群节点的地址,请参考以下示例代码:
from redis.cluster import RedisCluster
# 集群节点的地址
startup_nodes = [{'host': '127.0.0.1', 'port': '7000'}, # 这里的 IP 和端口要替换为你的集群节点
{'host': '127.0.0.1', 'port': '7001'},
{'host': '127.0.0.1', 'port': '7002'},
{'host': '127.0.0.1', 'port': '7003'},
{'host': '127.0.0.1', 'port': '7004'},
{'host': '127.0.0.1', 'port': '7005'}]
# 创建 Redis 集群连接
rc = RedisCluster(startup_nodes=startup_nodes, decode_responses=True)
# 测试连接
# 设置键值
rc.set("test_key", "Hello, Redis Cluster!")
# 获取值
value = rc.get("test_key")
print(value) # 输出: Hello, Redis Cluster!
3. 使用 Redis 集群的命令
一旦成功连接到 Redis 集群,你可以使用常规的 Redis 命令与集群进行交互,代码中的 set
和 get
示例就是基本的操作。
注意事项
- 启动节点:
startup_nodes
中的任一节点的 IP 和端口都是集群中任一节点的地址。 - 集群拓扑:连接时,客户端会自动发现集群的其他节点并进行负载均衡。
- 错误处理:在生产环境中,确保添加错误处理,以便在节点不可用时能够妥善处理异常。
- 版本要求:确保
redis-py
的版本较新(>=2.10.0),且支持 Redis 3.0 及以上的集群模式。
发布者:LJH,转发请注明出处:https://www.ljh.cool/43241.html