Преобразование 5-значного целого числа в байты через сеть клиент / сервер - PullRequest
0 голосов
/ 26 сентября 2019

Я пытаюсь сериализовать 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()
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...