Здесь есть несколько вариантов, но, вероятно, проще всего закодировать ваш словарь с использованием протокола Python pickle .
Для этого используйте код отправки , например:
import pickle
data_to_send = pickle.dumps(albums)
mysocket.send(data_to_send)
и код получения , например:
import pickle
albums = pickle.loads(data_received_from_socket)
Тем не менее, я хочу предупредить вас: использование модуля socket
вообще может быть червем.Это низкий уровень и предназначен для опытных программистов.По сравнению с вопросом, который вы только что задали, другие проблемы, с которыми вам придется столкнуться, вероятно, намного сложнее.Например, вам нужно подумать о как разделить ваши сообщения , прежде чем вы поймете, что передать в качестве второго параметра в socket.recv
(параметр bufsize
).
Я предлагаюВы пробуете что-то более высокого уровня, например, модули Python xmlrpc
.