Python3.9.0 a1安装pygame出错解决全过程(小结)


Posted in Python onFebruary 02, 2021

本文主要介绍了Python3.9.0a1安装pygame出错解决全过程,分享给大家,具体如下:

解决方法

先说一下经验教训:pygame最后终于安装成功了,但由于操作了一下午和一晚上的时间,查询了许多网页,操作了许多条命令,无法追溯到底是哪一步操作起关键性的作用。后来我推测是因为没有安装visual C++2014的缘故。
先把我推测的解决方法亮出来,后面再附上我出错的详细流程,希望跟我面临同样错误的人可以减少试错的次数。

1、python环境

操作系统:Win10,64位操作系统。
python版本:3.9.0a1。(有网友说,python是32位版本还是64位版本,看下图中[MSVC v.1916 64 bit(AMD64)]中间的数字是64bit还是32bit,64对应64位,32位对应32位版本。所以我的python应该是64位版本。
(查询版本信息,CMD进入命令行,输入python,回车即可)

Python3.9.0 a1安装pygame出错解决全过程(小结)

2、查找自己python适合的pygame版本

电脑必须联网。
运行——cmd,进入命令行,不用切换目录,直接输入pip install pygame。
它不会安装成功,成功的话就不用下面这些折腾了。但可以显示最适合你的python版本的pygame版本。

3、安装方法

先给个链接:参照这个网页执行步骤。这上面有VC++的安装链接。你最好先仔细看一下相关内容,再看我后面的内容。我实际上按这3个步骤执行并没有成功,但它引导我安装了一些必要的插件。http://www.pygame.org/wiki/CompileWindows

步骤1:获取一个C/C++编译器。

该网页上有VC++安装工具的下载链接build-tools-for-visual-studio-2017。下载它(Microsoft Build Tools for Visual Studio 2017. ),再安装。(但我没有下载它,我直接下载了一个visualcppbuildtools full.exe工具,使用的默认安装。安装的时候注意勾选最新版本的VC++和Win10SDK。)事后,从网页https://wiki.python.org/moin/WindowsCompilers才发现,不同版本的python必须使用指定版本的Visual C++。

安装完visual C++后,运行——cmd,进入命令行,不用切换目录,直接输入:

pip install setuptools -U

这条命令是下载必要的依赖插件和build for SDL2(experimental) or SDL1.其实我也不知道具体是干嘛,反正网页上说要执行,我就执行了。

步骤2:从github上找到合适的pygame模块压缩包
点击网页上的链接:https://github.com/pygame/pygame
如果直接点击打不开的话,就复制地址,粘贴到浏览器里,把https的s去掉。
下翻网页,你会看到***Instatllation*** 部分内容,点击这部分内容给出的链接地址:https://www.pygame.org/download.shtml
下载pygame-1.9.6.tar.gz.(之所以下载它,是因为我在命令行输入pip install pygame命令后,显示自动下载该安装包),我将下载的压缩包放在了C:\myapp 目录下,下载完成后,利用普通压缩软件WinRAR解压它。

步骤3:运行pygame安装命令
网页给出了SDL1、SDL2两种情况下的命令。我是按照第一种SDL1执行的。
第一句命令git clone https://github.com/pygame/pygame.git应该是用来下载pygame压缩包的,不需要执行。因为我已经下载了。
直接执行第二条命令:cd pygame
这条命令需要根据你下载的pygame压缩包的存放目录更改。我pygame-1.9.6.tar.gz.解压缩后的目录是:C:\myapp\pygame-1.9.6,所以我的执行命令是:

cd C:\myapp\pygame-1.9.6

执行:

pip install setuptools requests -U
python -m buildconfig

没有出现错误。

执行python setup.py install,出现错误。具体错误代码忘了截屏了,大致是VC2014的cl.exe出问题。我重新安装了visualcppbuildtools full.exe,点击修复。然后根据要求重启电脑。

重启电脑后,我并没有再执行上述步骤。而是进入命令行,先执行了一次

pip install pygame。

仍然显示错误,如下:

Python3.9.0 a1安装pygame出错解决全过程(小结)

接着,我又执行了命令:

pip install pygame==2.0.0.dev6

成功了。注意,是双等号,前后不要有空格。

这纯粹是无意尝试的。为什么会执行这条命令?我是在https://github.com/pygame/pygame页面,点击release时查询最新pygame的发行版本时:

Python3.9.0 a1安装pygame出错解决全过程(小结)

进入
https://github.com/pygame/pygame/releases,该网页显示最新发布的pygame版本。
发现如下使用命令安装时可以在pygame后面添加版本号:

Python3.9.0 a1安装pygame出错解决全过程(小结)

其实这条命令在我上述步骤执行之前,我也执行过,但仍然是失败的。执行完上述步骤1、2、3之后,这次却成功了。所以我也不知道哪一步才是关键性步骤了

到此这篇关于Python3.9.0 a1安装pygame出错解决全过程(小结)的文章就介绍到这了,更多相关Python3.9.0 a1安装pygame内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
python实现通过shelve修改对象实例
Sep 26 Python
Python的Django框架可适配的各种数据库介绍
Jul 15 Python
Python多线程爬虫简单示例
Mar 04 Python
详解Python map函数及Python map()函数的用法
Nov 16 Python
Python OpenCV实现图片上输出中文
Jan 22 Python
python如何统计序列中元素
Jul 31 Python
NumPy 数学函数及代数运算的实现代码
Jul 18 Python
python实现嵌套列表平铺的两种方法
Nov 08 Python
python通过matplotlib生成复合饼图
Feb 06 Python
windows下Pycharm安装opencv的多种方法
Mar 05 Python
Django 解决上传文件时,request.FILES为空的问题
May 20 Python
浅谈keras使用预训练模型vgg16分类,损失和准确度不变
Jul 02 Python
python3.9.1环境安装的方法(图文)
Feb 02 #Python
M1芯片安装python3.9.1的实现
Feb 02 #Python
python 使用OpenCV进行简单的人像分割与合成
Feb 02 #Python
Python 中 sorted 如何自定义比较逻辑
Feb 02 #Python
Python实现钉钉/企业微信自动打卡的示例代码
Feb 02 #Python
手把手教你配置JupyterLab 环境的实现
Feb 02 #Python
python 模块导入问题汇总
Feb 01 #Python
You might like
全世界最小的php网页木马一枚 附PHP木马的防范方法
2009/10/09 PHP
PHP生成唯一订单号的方法汇总
2015/04/16 PHP
如何利用http协议发布博客园博文评论
2015/08/03 PHP
php与c 实现按行读取文件实例代码
2017/01/03 PHP
PHP实现删除多重数组对象属性并重新赋值的方法
2017/06/07 PHP
Laravel学习教程之View模块详解
2017/09/18 PHP
function, new function, new Function之间的区别
2007/03/08 Javascript
使弱类型的语言JavaScript变强势
2009/06/22 Javascript
两个JavaScript jsFiddle JSBin在线调试器
2010/03/14 Javascript
js动态在form上插入enctype=multipart/form-data的问题
2012/05/24 Javascript
使用console进行性能测试
2015/04/27 Javascript
javascript实现信息增删改查的方法
2015/07/25 Javascript
vue2.x 父组件监听子组件事件并传回信息的方法
2017/07/17 Javascript
如何使用less实现随机下雪动画详解
2019/01/02 Javascript
vue+element实现表格新增、编辑、删除功能
2019/05/28 Javascript
[02:05:03]完美世界DOTA2联赛循环赛 LBZS VS Matador BO2 10.28
2020/10/28 DOTA
Python中字典的浅拷贝与深拷贝用法实例分析
2018/01/02 Python
分析Python读取文件时的路径问题
2018/02/11 Python
Python可变和不可变、类的私有属性实例分析
2019/05/31 Python
使用Python中的reduce()函数求积的实例
2019/06/28 Python
Python实现的企业粉丝抽奖功能示例
2019/07/26 Python
Python爬虫学习之获取指定网页源码
2019/07/30 Python
Python CVXOPT模块安装及使用解析
2019/08/01 Python
python批量替换文件名中的共同字符实例
2020/03/05 Python
Django {{ MEDIA_URL }}无法显示图片的解决方式
2020/04/07 Python
如何基于Python和Flask编写Prometheus监控
2020/11/25 Python
CSS3提交意见输入框样式代码
2014/10/30 HTML / CSS
CSS3中的Transition过度与Animation动画属性使用要点
2016/05/20 HTML / CSS
德国婴儿服装和婴儿用品购买网站:Baby Sweets
2019/12/08 全球购物
如何打造一封优秀的留学推荐信
2014/01/25 职场文书
《将心比心》教学反思
2014/04/08 职场文书
小学安全工作汇报材料
2014/08/19 职场文书
工作粗心大意检讨书
2014/09/18 职场文书
党员群众路线教育实践活动学习笔记
2014/11/05 职场文书
Redis性能监控的实现
2021/07/09 Redis
Python使用永中文档转换服务
2022/05/06 Python