gpt4 book ai didi

python-3.x - pythonic方式处理DataError : Invalid input of type: 'dict' . 先转换为字节、字符串、整数或 float 。?

转载 作者:行者123 更新时间:2023-12-03 17:26:27 24 4
gpt4 key购买 nike

Redis 版本 3.4.1
必须使用 hash,不能使用 str 或其他数据类型
数据:

{'_anno': {
'ctp': 'list',
'dt': [],
'ml': 0,
'na': 'apple',
'pos': -1,
'rel': '',
'st_var': '',
'tp': 'object'},
'_att': {'_cuser': 'apple card',
'_last_editor': 'apple card',
'_protext': 'authorize',
'_status': 'normal',
'_theme_id': 'apple card',
'_view': '12'},
}


我的代码
pool = redis.ConnectionPool(host=host, port=port)
conn = redis.StrictRedis(connection_pool=pool)

conn.hmset("aaaaaa",data)

引发错误

DataError: Invalid input of type: 'dict'. Convert to a bytes, string, int or float first.



现在代码
pool = redis.ConnectionPool(host=host, port=port)
conn = redis.StrictRedis(connection_pool=pool)
new_data={}
for key,value in data.items():
new_data[key]=json.dumps(value)
conn.hmset("aaaaaa",new_data)

有没有更pythonic的方式?

最佳答案

您的问题的解决方案是使用 hexdigest()digest()要转换您的字典,您可以使用它:

hashlib.sha256(mdp.encode()).hexdigest()

关于python-3.x - pythonic方式处理DataError : Invalid input of type: 'dict' . 先转换为字节、字符串、整数或 float 。?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/60409922/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com