Как правильно устранять неполадки программ python при экспорте с помощью pyinstaller? - PullRequest
0 голосов
/ 19 мая 2019

Я недавно создал программу на Python, и мне удалось упаковать ее в исполняемый файл с помощью PyInstaller.

Проблема в том, что созданный exe-файл генерирует окно, которое исчезает так быстро, что я не могу прочитать, что в нем.

Я не нашел способа держать это окно открытым:

-c и -w Команды PyIinstaller не работают, равно как и --debug all: окно все еще появляется, генерируя в нем сверхбыстрый текст терминала, а затем закрывается, не давая мне достаточно времени, чтобы прочитать, в чем проблема встречаются.

Есть ли способ, как я могу заставить PyInstaller exe создавать лог-файл того, что происходит, когда я их запускаю? Есть ли у вас какие-либо другие предложения о том, что я могу сделать, чтобы понять, почему моя программа дает сбой, или оставить окно открытым, чтобы я мог прочитать, что в нем? Спасибо за ваш интерес:)

1 Ответ

0 голосов
/ 21 мая 2019

Устранение неполадок в вашем коде не имеет ничего общего с Pyinstaller. Вы можете использовать python logging и перенаправить вывод консоли в текстовый файл. Вот хороший пример в здесь .

Кроме того, в соответствии с этим , если у вас есть проблемы с импортом ваших модулей и вам нужна дополнительная информация, вы можете использовать подробный режим, флаг -v для вывода дополнительной информации о состоянии импорта модулей Pyinstaller.

Вы также можете передать флаг -v (подробный импорт) во встроенный Python. интерпретатор (см. раздел «Предоставление параметров Python времени выполнения» выше). Это может быть очень полезно. Это может быть информативным даже с приложениями, которые по-видимому, работает, чтобы убедиться, что они получают весь импорт из комплекта и не просачивается в локально установленный Python.

Для вашего последнего вопроса, если вам нужно использовать строку JSON, вы можете использовать тип словаря с Python, а затем использовать модуль json (json.dumps) для преобразования dict в действительную строку JSON. Вы можете найти больше информации в здесь .

...