仅在将其转换为exe后,它才给我错误,可以作为.py文件正常工作
我试图找到丢失的文件并替换它,但仍然无法正常工作。 我得到的错误是:
回溯(最近通话最近一次):
正在调用的文件“ tkinter_init_.py”,第1705行
文件
中的文件“ CompilerGui.py”,第259行done = ttk.Button(window,text =“ Compile”,command = lambda:finish(texts, 窗口,search_folder))
文件“ CompilerGui.py”,第210行,位于完成cb.the_main(q_list,值)中
the_main中的文件“ CompilerBase.py”,第323行
file_write = write_docx(values_dict,file_to_write)
write_docx中第100行的文件“ CompilerBase.py”
my_docx = docx.Document()
文档中第25行的文件“ site-packages \ docx \ api.py”
打开的文件“ site-packages \ docx \ opc \ package.py”,第128行
from_file中第32行的文件“ site-packages \ docx \ opc \ pkgreader.py”
第31行中的文件“ site-packages \ docx \ opc \ phys_pkg.py”
docx.opc.exceptions.PackageNotFoundError:在以下位置找不到包 'C:\ Users \ LENOVO \ AppData \ Local \ Temp_MEI92522 \ docx \ templates \ default.docx'
答案 0 :(得分:0)
我认为您可以在.spec
文件中添加:
datas= [ ('C:\\Program Files\\Python36\\Lib\\site-packages\\docx\\templates\\*', 'docx\\templates' ) ],
在Analysis
部分中,将丢失的文件添加到您的exe
中。当然,这假定丢失的default.docx
在指定的文件夹中。
答案 1 :(得分:0)
我想出了解决问题的方法,它正在寻找一个不存在的文件夹。解决方法如下:https://youtu.be/bB9RXak4eVY
答案 2 :(得分:0)
另一个相当简单的解决方法是将default.docx
复制到您的应用目录中,将my_docx = docx.Document()
更改为my_docx = docx.Document(docx='default.docx')
,然后将datas=[('default.docx', '.')]
添加到您的.spec
文件。