2017-02-22 7 views
0

В сценарии Python мне нужно отправить один байт через Telnet со значением 0x06, например. Однако функция записи от telnetlib (Telnet.write(buffer)) принимает только аргументы.Отправить байт через Telnet в Python

Преобразование с использованием str(0x06) не работает, так как его вывод преобразует число в массив символов, в то время как я хочу, это char, значение которого равно 0x06.

Итак, как отправить один байт через Telnet с помощью Python?

+2

try '\ x06' должен работать –

+0

Или' b '\ x06'', если это для python3 - вы должны указать, какую версию python вы работаете с – mata

ответ

0

Вы можете использовать:

Telnet.write(chr(27)) 

или

Telnet.write("\x1b") 

написать один единственный байт, например.

+0

. Это работает! Благодаря! Дополнительные баллы: Что делать, если число не соответствует 1 байту и 2 байта? – AmiguelS

+0

Определите формат, равный 4 байтам. Затем заполните его 0 для 1, например: 0001. для 11 он должен выглядеть как 0011. Вы можете использовать форматированную строку, чтобы записать это. – KimKulling

Смежные вопросы