Я пытаюсь сериализовать 5-значные целые числа в байты для отправки по сети клиент / сервер.Мне нужна помощь, чтобы исправить функцию, которая делает это.
Сообщение об ошибке:
TypeError: cannot unpack non-iterable int object
Мой код:
import socket
import sys
from io import BytesIO
import struct
portnum = 5000
hostname = 'localhost'
def int_to_byte(m):
(msgtype,content)=m
buf = BytesIO()
buf.write(struct.pack('<i',int(content)))
buf.seek(0)
return buf.read()
sock = socket.socket(socket.AF_INET, socket.SOCK_STREAM)
server_addr = (hostname,portnum)
sock.connect(server_addr)
msg = "Hello There!"
numbers = 12345
sock.send(str.encode(msg))
sock.send(int_to_byte(numbers))
print("Message sent")
sock.close()