氵你开心就好 2021-09-06 14:18 采纳率: 100%
浏览 100
已结题

请问python如何运用pyinstaller将py程序与所需的其他文件一起打包为一个exe文件

store1=open('store.txt',mode='r+',encoding="utf-8")
datas=store1.read()
store1.close()
print(datas)
input()

我想要把store.txt文件和该程序打包成一个exe文件,并使其可以正常运行
百度查阅了一些资料,编辑spec文件后再次打包,但试了好几个方法exe文件均闪退
txt文件内容为:你好!hello!

  • 写回答

3条回答 默认 最新

  • hewenyangdan 2021-09-06 15:52
    关注

    spec文件里面有add-data选项, 官方解释如下
    --add-data <SRC;DEST or SRC:DEST>
    Additional non-binary files or folders to be added to the executable. The path separator is platform specific, os.pathsep (which is ; on Windows and : on most unix systems) is used. This option can be used multiple times.
    你可以尝试加入这个选项, 我试了, 可以实现

    忘了说有个条件: 脚本里面的路径需要变成临时目录sys._MEIPASS
    打包输入--add-data<'C:\小工具\源码\store.txt';.''>
    如果打包时找不到资源文件打包时再加一个选项
    --paths=<>
    用于导入的搜索路径类似于使用PYTHONPATH。允许以:分隔多个路径,或者多次使用该选项"""

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论
  • 於黾 2021-09-06 14:22
    关注

    1.如果你所有代码都在同一个文件里面,并且不需要加载任何其他文件,那么直接打包py文件即可
    2.如果你是个多文件系统,文件之间有互相Import的关系,那么你需要在文件夹外面执行打包程序,将整个文件夹打包
    3.如果你的文件运行过程中需要加载配置文件,你需要把配置文件复制到正确的路径,打包软件不会自动给你复制配置文件

    评论
  • 江天暮雪丨 2021-09-06 14:23
    关注

    把exe文件和 store.txt 放到同一目录下就可以了

    评论
查看更多回答(2条)

报告相同问题?

问题事件

  • 系统已结题 9月15日
  • 已采纳回答 9月7日
  • 创建了问题 9月6日

悬赏问题

  • ¥20 arcgis制做交通拥堵时变图
  • ¥15 AD20 PCB板步线 这个要怎么步啊
  • ¥50 关于《奇迹世界》1.5版本,数据修改
  • ¥15 请问这个问题如何解决(关键词-File)
  • ¥50 visual studio 2022和EasyX图形化界面
  • ¥15 找一下报错原因,纠正一下
  • ¥50 Cox回归模型Nomogram图制作报错
  • ¥20 SQL如何查询多级用户的数据
  • ¥15 给车牌识别代码加一个识别轮廓长宽比的代码
  • ¥30 商品价格预测的transformer模型优化