写的是pygame程序,在别人的电脑上能正常运行
绝对不会是加个input就好什么的!!!
打开cmd窗口,cd到py文件路径,直接输入python文件名,然后看到底有什么错追问
#或者
os.system("dir") #看是否有图片名追问
#还有别的可能,你的电脑装了多个python版本,idle打开的是一个,windows py扩展名关联的
是另一个,测试方法:
print(sys.version)追问
pygame.error: Couldn't open background.png
追答找不到文件?我感觉是你路径没弄对
追问图片和.py文件在一个文件夹里的,IDLE可以正常运行
应该不是环境变量什么的出了问题吧?
在代码里打开图片出错的地方(具体行号错误信息里应该有),上面插入一行:
print(os.getcwd()) #看当前路径到底在哪#或者
os.system("dir") #看是否有图片名追问
看了下,刚才打开cmd直接输入是在user/administrator目录下,所以找不到图片。我cd到py文件所在目录再运行是可以正常运行的
追答那就有点奇怪了。再确认下,我说的运行方式是直接输入py文件名,而不是python+文件名。
如果是,那再试试,选择py文件-右键-打开方式,浏览python安装目录下pythonw.exe。
好吧,直接输入文件名是找不到pygame这个包
ModuleNotFoundError: No module named 'pygame'
可以手工先确定一下你的pyganme路径在哪里,然后在python源码,import的上面,加
sys.path.append(pyganme路径) #多改路径测试几次看#还有别的可能,你的电脑装了多个python版本,idle打开的是一个,windows py扩展名关联的
是另一个,测试方法:
print(sys.version)追问
我python装在F盘,只装了3.6.5,环境变量加了F:\python; F:\python\Scripts;
用你的方法试了F:\python\Lib\site-packages、F:\python\Lib\site-packages\pygame、F:\python\include、F:\python\include\pygame都不行
print(sys.version)显示多少
温馨提示:答案为网友推荐,仅供参考
第1个回答 2018-05-24
把pyw 改为py
第2个回答 2018-06-27
我也是,复制到IDLE的shell里是正常执行的,用notepad++,sublime text ,jupyter notebook 都找不出来问题,然后用IDLE打开 ,发现缩进不对,在前一行最后开始删除,一直删除到出错的行的下一行,然后重新输入,解决了。这鸟问题郁闷了我大半天, python的缩进相当的恶心啊。写在这 希望 后人能跳出坑