У меня есть фрагмент кода, который получает координаты GPS от USB-приемника GPS. и этот код использует многопоточность, и это не будет работать в файле python, который я импортирую в мой основной файл (я не хочу помещать его непосредственно в основной из-за того, как организована моя программа), я хотел бы через подпроцесс или что-то подобное в python-3.4, запустите другой файл python и распечатайте весь вывод этого скрипта, который я запускаю из подпроцесса. Я посмотрел буквально сотни примеров, которые все ужасно потерпели неудачу, некоторые из них выбросили ошибки, в которых говорилось:
"Errno [2] no such file or directory".
Некоторые просто ничего не печатали, а некоторые выдавали ошибки, говоря
"buffsize has to be an int"
И один сказал:
subprocess.CalledProcessError: Command 'revGeoCode.py' returned non-zero exit status 127
Я не могу перечислить все примеры кода, которые я пробовал, потому что это буквально заняло бы весь день до конца. Но я попробовал Subprocess несколькими способами, включая:
SP.Popen, SP.call, SP.check_output
а также все варианты ОС, а также в подпроцессе с использованием: Shell = True, stdout, stderr, .PIPE, communication () и т. д. Я также попытался указать каталог, в котором находилась программа, но безрезультатно.
Вот несколько примеров того, что я пробовал, они не работают:
output = subprocess.check_output("python3 revGeoCode.py", shell=True)
print(output)
.
output = subprocess.check_output("revGeoCode.py", shell=True)
print(output)
.
output = subprocess.Popen("revGeoCode.py")
print(output)
желаемый результат:
Все, что происходит или печатается в revGeoCode.py,
это способ использовать подпроцесс для запуска файлов Python в фоновом режиме и распечатывать все, что печатал файл Python, как если бы вы использовали терминал ??
спасибо за любую помощь, которую вы можете оказать!