В настоящее время я пишу небольшое приложение на Python, которое выполняет скрипт PowerShell.Мой скрипт на python должен обрабатывать возвращаемую строку, но, к сожалению, у меня есть некоторые проблемы с кодировкой специальных символов, таких как ä, ö, Ü и так далее.Как я могу вернуть строку Unicode / UTF-8?
Вы можете увидеть простой пример ниже.Выход консоли b'\xc7\xcf\r\n'
.Я не понимаю, почему это не b'\xc3\xa4\r\n'
, потому что \xc3\xa4
должно быть правильной кодировкой UTF8 для символа 'ä'.
try.py:
import subprocess
p = subprocess.check_output(["powershell.exe", ".\script.ps1"])
print(p)
script.ps1:
return 'ä'
Я каким-то образом принял свой сценарий PowerShell, но не получил желаемого результата.
Добавлено "[Console]::OutputEncoding = [Text.UTF8Encoding]::UTF8". Result: b'\xc3\x83\xc2\xa4\r\n'
Возвращено return [System.Text.Encoding]::UTF8.GetBytes("ä"). Result: b'195\r\n131\r\n194\r\n164\r\n'
Кто может помочь получить консольный вывод 'ä'
для моего верхнего сценария?