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用ConfigObj读写配置文件的实现代码
Mar 04 Python
简单的Python2.7编程初学经验总结
Apr 01 Python
[原创]pip和pygal的安装实例教程
Dec 07 Python
使用Python读取大文件的方法
Feb 11 Python
Pandas中把dataframe转成array的方法
Apr 13 Python
在python带权重的列表中随机取值的方法
Jan 23 Python
Python更新所有已安装包的操作
Feb 13 Python
python 项目目录结构设置
Feb 14 Python
k-means 聚类算法与Python实现代码
Jun 01 Python
Numpy中ndim、shape、dtype、astype的用法详解
Jun 14 Python
Keras 实现加载预训练模型并冻结网络的层
Jun 15 Python
python爬虫beautifulsoup库使用操作教程全解(python爬虫基础入门)
Feb 19 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
怎样在UNIX系统下安装php3
2006/10/09 PHP
PHP生成月历代码
2007/06/14 PHP
PHP ADODB生成HTML表格函数rs2html功能【附错误处理函数用法】
2018/05/29 PHP
PHP匿名函数(闭包函数)详解
2019/03/22 PHP
在laravel框架中实现封装公共方法全局调用
2019/10/14 PHP
一个很简单的办法实现TD的加亮效果.
2006/06/29 Javascript
Js之软键盘实现(js源码)
2007/01/30 Javascript
javascript中创建对象的三种常用方法
2010/12/30 Javascript
ajax更新数据后,jquery、jq失效问题
2011/03/16 Javascript
用js判断页面是否加载完成实现代码
2012/12/11 Javascript
在JavaScript中实现类的方式探讨
2013/08/28 Javascript
js获取多个tagname的节点数组
2013/09/22 Javascript
关于js中for in的缺陷浅析
2013/12/02 Javascript
node.js中的http.response.write方法使用说明
2014/12/14 Javascript
jQuery中innerWidth()方法用法实例
2015/01/19 Javascript
12行javascript代码绘制一个八卦图
2015/04/02 Javascript
JavaScript中Math.SQRT2属性的使用详解
2015/06/14 Javascript
JS改变页面颜色源码分享
2018/02/24 Javascript
webpack公共组件引用路径简化小技巧
2018/06/15 Javascript
微信小程序项目实践之九宫格实现及item跳转功能
2018/07/19 Javascript
React SSR样式及SEO的实践
2018/10/22 Javascript
Element 默认勾选表格 toggleRowSelection的实现
2019/09/04 Javascript
jQuery 动画与停止动画效果实例详解
2020/05/19 jQuery
uniapp,微信小程序中使用 MQTT的问题
2020/07/11 Javascript
修改NPM全局模式的默认安装路径的方法
2020/12/15 Javascript
Python使用scrapy采集时伪装成HTTP/1.1的方法
2015/04/08 Python
python3.6实现学生信息管理系统
2019/02/21 Python
Python3 ID3决策树判断申请贷款是否成功的实现代码
2020/05/21 Python
ASICS印度官方网站:日本专业运动品牌
2020/06/20 全球购物
大学生学业生涯规划
2014/01/05 职场文书
领导调研接待方案
2014/02/27 职场文书
环保志愿者活动总结
2014/06/27 职场文书
酒店管理失职检讨书
2014/09/16 职场文书
培训心得体会怎么写
2016/01/25 职场文书
Python如何把不同类型数据的json序列化
2021/04/30 Python
SpringBoot集成Druid连接池连接MySQL8.0.11
2021/07/02 Java/Android