当前位置: 首页 > 后端技术 > Python

全方位覆盖,在不同架构(Intel-m1)、不同开发平台(Win-Mac-Ubuntu)上配置Python3.10开发环境

时间:2023-03-26 02:06:13 Python

原文转载自《刘越的技术博客》https:///v3u.cn/a_id_200光阴似箭,岁月如梭。即将进入2022年,著名的敏捷开发语言Python也发布了最终版3.10。本次我们将展示如何在不同的系统和平台上高效部署Python3.10开发环境。这里我们不依赖其他第三方软件,只通过官方Python安装包进行配置。编辑器我们还是使用微软开源的Vscode,力争一分钟内在干净的开发机上部署好环境,省去一些不必要的步骤。首先我们以市场占有率最高的微软英特尔芯片x86架构的64位win10系统为例。第一步,打开python官网,python.org,选择python3.10.064位windows系统安装包。下载成功后,双击安装。这里不要选择默认的第一个立即安装,因为默认安装会将python安装到很深的目录下。在日常开发中,我们可能会修改一些库的源代码。这种目录很深。情况会造成一些不便。还要检查添加环境变量。然后就是默认安装了一些插件,不需要单独设置。点击下一步。这里建议将python安装到c盘根目录下,方便我们随时修改调试。安装成功后,可以按快捷键:Windows键+r输入cmd打开,在终端输入python命令。如果可以进入python命令行,则安装成功。Win32上的Python3.10.0(标签/v3.10.0:ccb0e6a,2021年11月15日,18:08:50)[MSCv.192964位(AMD64)]输入“help”、“copyright”、“credits”或“许可证”以获得更多信息。>>>否则可能是环境没有配置好。这里我们可以通过右击这台电脑,选择属性,高级系统设置,环境变量,可以看到已经配置好了,这里也可以配置不同版本的Python。除了Pythonbody,我们还可以配置pip的安装源。pip是我们用来安装第三方库的软件。默认源是国外网站,速度很慢。这里我们打开用户目录,选择当前用户目录,新建文件夹pip,然后创建pip.ini配置文件:[global]trusted-host=mirrors.aliyun.comindex-url=http://mirrors.aliyun在.com/pypi/simple文件里面指定可信域名,然后写入具体的源地址。重新打开终端,输入命令pipconfiglist如果看到原来的地址变了,那么配置成功liuyue:Versionsliuyue$pipconfiglistglobal.index-url='http://mirrors.aliyun.com/pypi/simple/'install.trusted-host='mirrors.aliyun.com'liuyue:Versionsliuyue$下面看一下编辑器vscode的配置,打开vscode官网,点击下载,这里我们选择64位Intel芯片的系统安装包,点击下载安装成功后,双击打开vscode,这里需要安装两个插件。点击打开插件商店,先安装Python插件。它可以帮助我们选择一个python解释器,它自带语法检查和代码补全功能。然后可以选择中文语言包,让vscode界面变成中文。安装后需要重启编辑器。这里配置了Intel芯片64位win10系统的开发环境。其实还有一个版本的win10系统,就是微软针对苹果m1芯片的arm架构适配的win10系统。这个系统也是64位的,整体配置过程和intel芯片的win10差别不大。同样下载windows64位安装包,执行以上安装步骤。唯一需要注意的是,下载vscode时一定要选择arm架构的系统安装包。安装步骤没有区别,可以正常运行python10代码。接下来我们来到windows11系统。由于系统正式版发布时间不长,微软官方不推荐使用该系统作为生产力工具。不过在我的测试过程中,python3.10的开发环境也可以正常配置,开发过程中没有发现bug。具体配置过程:还是下载windons64位安装包,继续前面的安装步骤。一般配置pip源。下载vscode时,根据系统芯片的不同选择vscode版本即可。插件的安装配置与win10系统相同。最后python代码也能正常运行,所以win11平台的向下兼容性还是很好的。然后我们来到mac系统,也是分为两种。首先,让我们看看配备英特尔芯片的Mac。过程是从官网下载安装。如果是3.10版本,直接下载64位mac安装包即可。如果是老版本,比如3.9,建议下载Intel芯片专用安装包。下载成功后点击安装,无需特殊配置,系统会自动将python安装到应用中。默认安装目录:/Library/Frameworks/Python.framework/Versions/3.10/我们点击终端,直接输入python3命令。同时会自动配置pip。每个版本号都有自己单独的命令。Switchup也很方便。liuyue:版本liuyue$python3Python3.10.0(v3.9.9:ccb0e6a345,Nov152021,13:29:20)[Clang6.0(clang-600.0.57)]ondarwin输入“help”、“copyright”、“学分”或“许可证”以获取更多信息。>>>同理,mac系统也可以更改pip安装源。在用户目录下创建.pip文件夹,写入pip.conf文件。vim~/.pip/pip.conf文件内容与win10平台一致,也指定了阿里云国内源。[global]index-url=http://mirrors.aliyun.com/pypi/simple/[install]trusted-host=mirrors.aliyun.com然后进入pip3configlist查看是否生效。liuyue:Versionsliuyue$pip3configlistglobal.index-url='http://mirrors.aliyun.com/pypi/simple/'install.trusted-host='mirrors.aliyun.com'liuyue:当然是版本liuyue$,如果通过安装包安装不同版本的Python,此时需要指定一个默认版本,或者通过软链接配置:sudoln-s/Library/Frameworks/Python.framework/Versions/3.10/bin/python3.10/usr/local/bin/python3同样,不同版本的pip也可以设置软链接:sudoln-s/Library/Frameworks/Python.framework/Versions/3.10/bin/pip3.10/usr/local/bin/pipmac系统下的vscode配置,如果是intel芯片系统,那么可以选择intel专用版本,下载成功后是一个压缩包,解压后直接将文件拖到应用程序。插件方面,和win10系统一样,只需要安装Python插件就可以正常使用了。那我们就来看看苹果m1芯片arm架构的Mac系统吧。这里以最新的AppleMonterey系统为例:在安装文件的版本选择中,无论是最新的3.10版本还是老版本,始终选择arm架构专用的安装包,然后双击安装.安装过程没有区别,同样可以配置pip源。在编辑器层面,也选择了arm架构的版本进行下载。可以说m1芯片mac系统的配置除了安装文件外都是arm架构,其他过程和interchipmac系统一样。最后再来看看ubuntu系统。这里以百度云的ubuntu20.04版本为例。Ubuntu也是第一个支持通过软件管理器直接安装python3.10的Unix内核系统。centos等其他系统也需要编译安装。这里我们使用apt-get来安装python。登录系统后,首先在apt-get中添加安装源,将deadsnakesPPA添加到源列表中。add-apt-repositoryppa:deadsnakes/ppa升级apt-get。aptupdate然后安装python3.10aptinstallpython3.10安装成功后直接进入python命令行即可。root@instance-fxsra23d:~#python3.10Python3.10.0(默认,2021年10月4日,22:09:55)Linux上的[GCC9.3.0]输入“help”、“copyright”、“credits”或“许可证”以获得更多信息。>>>但是这里3.10并不是唯一的版本,我们可以看到系统默认的版本是3.8。root@instance-fxsra23d:~#python3Python3.8.10(默认,2021年9月28日,16:10:42)Linux上的[GCC9.3.0]输入“help”、“copyright”、“credits”或“license”了解更多信息。>>>然后就可以使用命令设置3.10为第一个默认版本了。sudoupdate-alternatives--install/usr/bin/python3python3/usr/bin/python3.101之后,默认版本已经切换到python3.10root@instance-fxsra23d:~#python3Python3.10.0(默认,2021年10月4日,22:09:55)[GCC9.3.0]在Linux上键入“帮助”、“版权”、“信用”或“许可证”以获取更多信息。>>>结论:这样,我们在两个不同芯片架构上的五个不同操作系统展示了如何配置python3.10开发环境。诚然,新版python3.10不错,但现有的项目在不进行大规模修改的情况下,是否还能正常运行,还需要打开。问号,是的,版本迭代的理想和语言升级实践的现实总是有相当大的差距,这让升级本身就有很大的阻力,但很多时候,为了长远利益,短期的痛苦是必须的。原文转载自《刘越的技术博客》https://v3u.cn/a_id_200