Я использую subprocess.check_output
вызов приложения командной строки MS DOS для возврата строки stdout
из приложения.
Возвращаемое значение check_ouput - это информация о только что запущенной команде, новая строка, содержащая результат, который я получаю, и другая новая строка. В частности, возвращаемая строка выглядит так:
b'0ms: Channel.#0.Range.SelectedItem?\r\n\xf150 mV\r\n'
Проблема заключается в \ xf1 после первой новой строки, этот символ должен быть ± (\ xb1), но всегда возвращается как - (\ xf1), и я не могу понять, почему.
Если я запускаю команду вручную в командной строке, я получаю ±, как и следовало ожидать, поэтому я не думаю, что приложение командной строки ошибочно.
В краткосрочной перспективе я могу просто заменить любой \ xf1, который найду, на \ xb1, но это хак, и я бы предпочел предотвратить это, а не обходить его.
Кто-нибудь получил какие-либо идеи о том, почему разница символов между командной строкой и python?