无法向 RabbitMQ 发送字典(不可散列类型:'sl​​ice')

Ala*_*ano 4 python dictionary rabbitmq python-3.x

我想以字典格式向 RabbitMQ 发送消息:

import pika

# ....
my_msg = {}
my_msg["a"] = 1
my_msg["a"]["b"] = 2
channel.basic_publish(exchange="", routing_key="some_key", body=my_msg)
Run Code Online (Sandbox Code Playgroud)

我得到一个错误:

TypeError: unhashable type: 'slice'
Run Code Online (Sandbox Code Playgroud)

请注意,我有很多,my_msg每个都有几个键,所以我需要以某种方式能够将列表字典发送到 RabbitMQ。

我怎样才能做到这一点?或者还有其他选择吗?

Ali*_*lik 6

您需要将字典序列化为字符串并通过 RabbitMQ 发送它们。

看到这个问题