hkq666 发表于 2023-5-10 12:28

python pyinstaller 打包单文件运行后无输出结果

代码很简单,就是输入一个数字,然后在word文档里生成 编号1,编号2.......这样,目前遇到对的问题是,pyinstaller打包生成文件夹时运行没有问题,能生成一个word文档,但打包成单文件就没法生成word文档了,但在exe文件控制台界面会输出 “文档创建完成”提示,代码完整执行了。请教各位这种情况可能是什么原因?
from docx import Document
import os
docpath=os.path.abspath(os.path.dirname(__file__))
i=input("请输入编号数:")
i=int(i)
i=i-1
doc = Document()
n=0
print("开始创建文档!")
while n<=i:
    n=n+1
    doc.add_paragraph("编号"+ str(n)+'\n')
docname=docpath+"\\编号1-"+str(i+1)+".docx"
doc.save(docname)
print("文档创建完成!")

evilhsu 发表于 2023-5-10 12:38

本帖最后由 evilhsu 于 2023-5-10 12:41 编辑

    if hasattr(sys, '_MEIPASS'):
      docpath = os.path.dirname(os.path.realpath(sys.executable))
    else:
      docpath = os.path.dirname(os.path.abspath(__file__))

wushui 发表于 2023-5-10 12:50

你打包的exe 文件要指定参数吧,input()是接收输入的,exe 文件运行的时候有输入吗?

hkq666 发表于 2023-5-10 13:01

evilhsu 发表于 2023-5-10 12:38
    if hasattr(sys, '_MEIPASS'):
      docpath = os.path.dirname(os.path ...
感谢回复,完美解决了问题

TenSir152 发表于 2023-5-18 11:59

包有时候过大,虚拟环境也不是很好使
页: [1]
查看完整版本: python pyinstaller 打包单文件运行后无输出结果