cx_Freeze преобразовал exe: окно закрывается сразу
Я пытаюсь просто конвертировать Pygame Python Py в файл.exe с помощью cx_Freeze. Файл установки выполняется правильно и без ошибок, но проблема в том, что когда я запускаю свой.exe-файл, окно консоли (черное окно, похожее на cmd) открывается быстро и закрывается. Мой.py, который я хочу преобразовать, называется Salary.py, и в него включены коды.input('str'), чтобы пользователь мог решить, какой CSV-файл он хочет использовать. Описание моего Salary.py: если пользователь вводит целое число, Salary.py помогает ему проанализировать один существующий CSV-файл, запустить скрипт и вывести его в другой CSV-файл. Китайский включен в код. Еще раз, нет ошибки при запуске Salary.py в python3.6, и нет ошибки при создании exe-файла.
Setup.py Я использую:
from cx_Freeze import setup, Executable
import os
os.environ['TCL_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
setup(name='Salary',
version='0.1',
description='Salarycount',
executables= [Executable("Salary.py")])
Я пытаюсь выполнить Salary.exe в cmd. И это дало мне это:
Traceback (most recent call last):
File "D:\Anaconda3\lib\site-packages\cx_Freeze\initscripts\__startup__.py", line 14, in run
module.run()
File "D:\Anaconda3\lib\site-packages\cx_Freeze\initscripts\Console.py", line 26, in run
exec(code, m.__dict__)
File "Salary.py", line 8, in <module>
File "D:\Anaconda3\lib\site-packages\pandas\__init__.py", line 19, in <module>
"Missing required dependencies {0}".format(missing_dependencies))
ImportError: Missing required dependencies ['numpy']
Похоже, numpy уже установлен в мои пакеты Python, я даже не знаю, что это значит. мое окружение: Anaconda 3 python 3.6 cx-Freeze 6.0b1
1 ответ
Похоже, что ваш скрипт Salary.py использует pandas
пакет, это правильно? pandas
пакет требует numpy
пакет для работы, и нужно явно указать cx_Freeze, чтобы включить numpy
пакет. Попробуйте добавить следующее options
в setup
:
from cx_Freeze import setup, Executable
import os
os.environ['TCL_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
os.environ['TK_LIBRARY'] = r'D:\Anaconda3\tcl\tcl8.6'
setup(name='Salary',
version='0.1',
description='Salarycount',
options={'build_exe': {'packages': ['numpy']}},
executables= [Executable("Salary.py")])