我正在帮助一个需要在csvs中转换一些数据的朋友,所以我制作了一个名为“ csv_converter.py”的小python程序-它需要一个csv输入文件和csv输出文件,并且一切都变样了。
我希望能够为他们提供一个可以在其计算机上运行的文件(不一定需要python和pandas),因此我正在尝试PyInstaller。
在我的python程序所在的目录中,运行:pyinstaller csv_converter.py
根据docs,它将创建一个'dist'文件夹,其中“您找到分发给用户的捆绑应用程序”。听起来要运行的关键文件将是:dist / csv_converter / csv_converter(说明源:here),然后我可以发送整个csv_converter文件夹,或者如果我使用以下命令运行Pyinstaller命令,则可以仅发送csv_converter文件: --onefile参数。
运行PyInstaller之后,我看到创建了这些目录,但是当我导航至dist / csv_converter /并尝试运行该重要的csv_converter文件(尝试发送任何内容之前)时,出现以下错误:
Dianes-MacBook-Pro:csv_converter dkaplan$ ./csv_converter -h
Traceback (most recent call last):
File "site-packages/PyInstaller/loader/rthooks/pyi_rth__tkinter.py", line 30, in <module>
FileNotFoundError: Tcl data directory "/Users/dkaplan/PycharmProjects/chris_csv_converter/src/dist/csv_converter/tcl" not found.
[36637] Failed to execute script pyi_rth__tkinter
那么近,但是到目前为止! 是否还有其他人遇到此问题或知道解决方法?
答案 0 :(得分:0)
我在PyInstaller上听到了好心人的回音,这是他们在tinter中看到的一种常见现象。我不确定从何处提取它,但是解决方法是使用以下参数排除它:--exclude-module = tkinter
我选择使用--onefile参数(速度较慢,但意味着我只能发送一个文件),因此完整的命令为:pyinstaller --onefile --exclude-module=tkinter csv_converter.py
然后: