Остановка отправки при len(msg[i]) < buf
, поэтому конец данных может отсутствовать.
Если вы хотите отправить все сообщения [i], лучше сделать:
while msg[i]:
tdata[i], msg[i] = msg[i][:buf], msg[i][buf:]
c.sendall(tdata[i])
или просто отправьте его за один раз:
c.sendall(msg[i])
Обратите внимание, что send()
вернет, сколько фактически было отправлено байтов (потому что это не обязательно отправит их все), поэтому, если вы хотите отправить все (как это обычно бывает), используйте sendall()
. 1012 *