鱼C论坛

 找回密码
 立即注册
查看: 1968|回复: 14

[已解决]pygame使用pyinstaller打包后无法运行

[复制链接]
发表于 2021-9-9 21:24:34 | 显示全部楼层 |阅读模式

马上注册,结交更多好友,享用更多功能^_^

您需要 登录 才可以下载或查看,没有账号?立即注册

x
如题,飞机大战主程序main.py使用pyinstaller打包后形成一个main文件夹,点击main.exe在我的电脑能够运行,文件夹发送到另一台电脑后闪退无法运行
报错信息:
  1. File"main.py", line 16, in<module>
  2. FileNotFound: No such fiel or directory
  3. [9940] Failed to execute script 'main' due to unhandled exception!
复制代码
最佳答案
2021-9-14 22:05:58
在终端 cd 你游戏的路径文件夹
小甲鱼最新课程 -> https://ilovefishc.com
回复

使用道具 举报

发表于 2021-9-9 22:11:46 | 显示全部楼层
代码贴出来
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-9 22:29:20 | 显示全部楼层
你是只把exe文件发过去了吗
要把所有附属文件都发过去才行哦
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-9 23:42:26 | 显示全部楼层
小伤口 发表于 2021-9-9 22:29
你是只把exe文件发过去了吗
要把所有附属文件都发过去才行哦

就是把生成的那个main文件夹一起发过去了
但是其他的图片文件还有其他模块没有发
其他模块也是.py文件该怎么发
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-9 23:44:06 | 显示全部楼层
猜测你可能使用了一个绝对路径,在新电脑无法引用
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-9 23:44:42 | 显示全部楼层
C++太极门小弟子 发表于 2021-9-9 23:42
就是把生成的那个main文件夹一起发过去了
但是其他的图片文件还有其他模块没有发
其他模块也是.py文件 ...

图片文件得发过去,位置就在于你代码如何怎样调用图片
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-9 23:55:08 | 显示全部楼层
qq1151985918 发表于 2021-9-9 23:44
猜测你可能使用了一个绝对路径,在新电脑无法引用


对的我是调用的绝对路径,因为我是用vscode编写只能用绝对路径不然我自己运行不了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-9 23:58:36 | 显示全部楼层
小伤口 发表于 2021-9-9 23:44
图片文件得发过去,位置就在于你代码如何怎样调用图片

应该也跟我用了绝对路径有关,vscode我不用绝对路径编译不了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-10 00:04:03 | 显示全部楼层
C++太极门小弟子 发表于 2021-9-9 23:58
应该也跟我用了绝对路径有关,vscode我不用绝对路径编译不了

vscode写python只能用绝对路径吗?
不应该呀?(虽然我没试过)
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-10 00:06:18 | 显示全部楼层
小伤口 发表于 2021-9-10 00:04
vscode写python只能用绝对路径吗?
不应该呀?(虽然我没试过)

反正我写的时候只能这样
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-10 09:15:19 | 显示全部楼层
本帖最后由 洛阳城 于 2021-9-10 09:17 编辑

1. 极有可能是代码中引用到的文件在另外一台电脑上索引不到,可以在路径时使用相对路径,如
  1. .\picture.jpg
复制代码
这样将图片复制到exe文件的相同目录下就好
2. 可能是使用的库没有打包到exe文件中,使用pyinstaller将py文件打包成exe文件时推荐使用-F命令同时将使用到的库统一打包到生成的exe文件里,格式:
  1. pyinstaller -F Path\FileName.py  # path是文件路径
复制代码

3. 如果使用了-F命令但是还是出现使用的库没打包到exe文件中的,可能是从Pycharm或其他处下载的库在CMD中编译时找不到,这时候根据报错找到缺少的库在CMD中用pip下载后再次打包就好
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-13 13:09:14 | 显示全部楼层
C++太极门小弟子 发表于 2021-9-10 00:06
反正我写的时候只能这样

这是因为在vscode的终端的路径没有调到你的游戏文件夹
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 21:21:24 | 显示全部楼层
xjy=lwy 发表于 2021-9-13 13:09
这是因为在vscode的终端的路径没有调到你的游戏文件夹

那这个要怎么操作
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

发表于 2021-9-14 22:05:58 From FishC Mobile | 显示全部楼层    本楼为最佳答案   
在终端 cd 你游戏的路径文件夹
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

 楼主| 发表于 2021-9-14 23:48:35 | 显示全部楼层
xjy=lwy 发表于 2021-9-14 22:05
在终端 cd 你游戏的路径文件夹

好的谢谢,可以了
小甲鱼最新课程 -> https://ilovefishc.com
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

小黑屋|手机版|Archiver|鱼C工作室 ( 粤ICP备18085999号-1 | 粤公网安备 44051102000585号)

GMT+8, 2025-6-18 16:31

Powered by Discuz! X3.4

© 2001-2023 Discuz! Team.

快速回复 返回顶部 返回列表