#python #operating-system #pyinstaller #python-3.8
#python #операционная система #pyinstaller #python-3.8
Вопрос:
Я написал следующий код на python 3.8
import os
log=open('userlog.txt', 'a')
log.write(os.getlogin())
log.write('n')
log.close()
os.system('shutdown /s /t 0')
Он отлично работает, как и предполагалось, когда я запускаю его в обычном режиме: он добавляет имя пользователя в текстовый файл, а затем выключает компьютер. Однако, когда я использую pyinstaller для преобразования его в exe, он не работает. Вместо этого он открывает пустые окна командной строки, которые нельзя вводить примерно раз в секунду. Есть ли причина, по которой это может происходить?
Я использую Windows 10.
Ответ №1:
Компиляция вашего скрипта в Windows 10 с помощью Python 3.6 и PyInstaller 3.6 сработала для меня. Возможно, вы неправильно его компилируете. Для меня следующие шаги работали в командной строке (обратите внимание, что %USERNAME%
это ваше имя пользователя).
cd "C:Users%USERNAME%pathtoscript"
pyinstaller script.py
Первый шаг включает в себя изменение вашего текущего рабочего каталога на каталог, содержащий ваш скрипт. Второй шаг — это обычный процесс компиляции PyInstaller.
Если это не работает, проверьте выходные данные компиляции PyInstaller и / или любые журналы ошибок из PyInstaller. Это может помочь вам найти проблему.