用python写一段代码,在redis中使用string结构存储本地文件夹中的图片,所占内存开销
时间: 2024-09-10 12:26:22 浏览: 36
python的redis数据库连接与使用
5星 · 资源好评率100%
在Python中,我们可以使用`redis`库将文件内容转换为字节串然后存储到String数据结构中。假设我们要存储的是图片,首先需要读取图片文件的内容,然后将其base64编码以适应Redis的字符串存储。下面是一个简单的示例:
```python
import redis
import base64
import os
# 连接Redis服务
r = redis.Redis(host='localhost', port=6379, db=0) # 假设默认配置
def store_image_to_redis(image_path):
with open(image_path, 'rb') as img_file:
image_content = img_file.read()
encoded_image = base64.b64encode(image_content)
key = "image_" + os.path.basename(image_path) # 使用文件名作为键
r.set(key, encoded_image.decode('utf-8')) # 存储字节串并解码为字符串
# 示例:将当前目录下的image.jpg存储到Redis
store_image_to_redis('image.jpg')
# 计算存储开销
image_size = len(encoded_image)
memory_usage = image_size / (1024 * 1024) # 将字节数转换为MB
print(f"Image '{os.path.basename(image_path)}' takes {memory_usage:.2f} MB in Redis.")
阅读全文