История изменений
Исправление proud_anon, (текущая версия) :
b'H'
— это литерал. Python на этапе парсинга скрипта подставляет объект bytes, полученный путём кодирования строки 'H' в UTF-8.
С помощью decode ты во время выполнения преобразуешь (заранее неизвестные) объекты bytes в str, декодируя их по UTF-8.
Ещё раз повторю, что, по моему мнению, проще писать tmac = str(omac)
Кроме того, ты мог передать конструктору Popen
параметр universal_newlines=True
, и тогда stdout.read()
возвращал бы строки.
Кроме того, вместо subprocess.Popen
ты мог бы вызвать subprocess.check_output
или subprocess.run
(в Python 3.5).
Исходная версия proud_anon, :
b'H' — это литерал. Python на этапе парсинга скрипта подставляет объект bytes, полученный путём кодирования строки 'H' в UTF-8.
С помощью decode ты во время выполнения преобразуешь (заранее неизвестные) объекты bytes в str, декодируя их по UTF-8.
Ещё раз повторю, что, по моему мнению, проще писать tmac = str(omac)
Кроме того, ты мог передать конструктору Popen
параметр universal_newlines=True
, и тогда stdout.read()
возвращал бы строки.
Кроме того, вместо subprocess.Popen
ты мог бы вызвать subprocess.check_output
или subprocess.run
(в Python 3.5).