Я думаю, вы могли бы поэкспериментировать с numpy.savetxt
передачей объекта cStringIO.StringIO
в виде фальшивого файла ...
Или, возможно, с помощью str(x)
и заменой пробелов на запятые (правка: это не сработает, потому что str
выполняет многоточие с большими массивами: -s).
Поскольку целью этого было отправить массив по сети, возможно, есть лучшие альтернативы (более эффективные как по процессору, так и по пропускной способности). Тот, который я указал в комментарии к другому ответу, чтобы закодировать двоичное представление массива в виде текстового блока Base64. Основное неудобство для того, чтобы это было оптимальным, заключается в том, что клиент, читающий кусок данных, должен иметь возможность делать такие неприятные вещи, как переосмысление байтового массива как массива с плавающей запятой, что обычно не допускается в языках с безопасным типом; но это можно сделать быстро с помощью вызова библиотеки C (и большинство языков предоставляют средства для этого).
Если вы не можете связываться с битами, всегда есть возможность обрабатывать числа одно за другим, чтобы преобразовать декодированные байты в числа с плавающей запятой.
Да, и следите за порядком номера машин при отправке данных по сети: преобразовать в сетевой порядок -> base64encode -> send | получить -> base64decode -> преобразовать в порядок хостов