古人云:万事开头难。即使在知识极大丰富、信息技术高度发达的今天,学习任何知识与技术,最难的仍然是环境的搭建。从学习Python的环境搭建角度而言,存在以下选择:

  • Windows环境,是用Anaconda或者Minconda还是官方Python?
  • Linux环境,用Ubuntu还是Centos,还是使用ARLinux。桌面环境是用GNOME还是KDE?

笔者使用Python多年,自行搭建过很多环境,踩过无数的坑,浪费了无数的时间,最后得出的结论是:

  • Windows10/11在绝大多数情况下,最适合开发者。有特殊需求可以内建wsl/wslg,如果不行再使用Docker,最差情况下使用虚拟机,能够满足最大多数情况;
  • 在项目工程级开发中,可以使用私有云环境,或者租用成熟的云平台,例如阿里云/华为云等。操作系统使用Ubuntu而不是Centos进行相关开发。如果有图形界面,则辅助以VNC;
  • 一般情况下,最好使用官方的Python安装包,不建议使用第三方集成的安装包。

无论多少人差评Windows,Windows仍然是世界上最易用的操作系统,有着对用户最友好的图形界面、最好的硬件兼容性以及最称手的开发工具。2021年11月,Linux之父Linus Torvalds在DebConf 14会议上谈到了关于桌面版Linux的问题,他作为一个“喷子”的激情又按耐不住了。Linus在演讲中直指各大桌面Linux发行版的应用程序兼容问题。此外,一些桌面Linux发行版在向后兼容方面也太差,普通用户需要的是开箱即用,如果一个软件在Ubuntu 20上可以正常使用,升级到Ubuntu 21就出现兼容性问题。Linus还谈到了一些其他问题,比如Linux发行版在包管理上浪费了太多精力、把编译工作都交给用户来做、应用分发体验(打补丁等)不如Windows等。其实,这已经不是Linus第一次“吐槽”所谓桌面版Linux“烂”了。在过去的20年里,我们一直听说桌面版Linux将如何在“5年”内成为主流的话题。但与此同时,Linus也花了20年时间,试图向那些“狂热的”桌面版Linux操作系统用户解释——Linux根本不是为普通桌面操作系统用户设计的,而是为开发者、IT专家和程序员而设计的。苹果电脑非常小众,虽然也非常精良,但价格非常不亲民。

 在Windows环境中,建议使用Win11。虽然Win11网上说有各种不足,但仍然建议升级或安装为Win11。原因很简单,没有完美的操作系统,微软力推的操作系统,即使现在有缺陷,后续也会趋于完美。即使你不换操作系统,随着时间的推移,后续的各类软件升级也将不兼容旧的操作系统。与其如此,不如紧跟时代,享受技术红利。此外,为了能够充分发挥CPU能力,建议打开计算机的BIOS,将对虚拟化的支持打开。

 Windows版本众多,建议大家选用Windows专业版。按下"Win"键同时按下"R"键,会弹出输入框,输入命令“Winver”,就可以看到当前操作系统的版本。之所以使用专业版,主要原因是功能齐全,能够安装:

  • hyper-v,Windows自带的虚拟机;
  • wsl ,Windows自带的Linux子系统;
  • Sandbox,Windows自带的沙盒软件,方便无痛测试各类软件。

由于Windows下应用繁多,各种流氓软件防不胜防,强烈建议大家不要安装任何第三方(无论国内外)的杀毒与防火墙软件,微软自带的已经足够。

微软的Sandbox是被人忽视的宝盒,对于Python的搭建环境来说非常适合于练手。Win+R后输入“WindowsSandbox”就可以启动它,使用方法与现有的Windows没有区别,只是关闭后现有的数据全部丢失,以保证下一次启动时仍然是全新的,而这一特性正是我们在练手时需要的。下载时注意:

  • 任何时候都不要使用国内外所谓的软件下载站,或者软件管理器等来下载。这些无良网站会要求安装软件,而且软件本身也有可能被魔改;
  • 使用Windows内置的Edge浏览器访问[Python官方下载网址](https://www.python.org/downloads/),不要选择安装最新的版本。原因是安装了最新的版本,有可能相关的库还没有配套升级。所以,我们保守的选择Python 3.8.x系列。目前选择安装[Python 3.8.10](https://www.python.org/downloads/release/python-3810/),选择其中64位版本,下载并且运行;
  • 如果下载慢,推荐使用"Internet Download Manager"来加速下载。如果要反复安装,建议下载完成后,保存这个Python3.8.10的安装软件以备后用;
  • 如果多次反复下载未果,可以试用[国内镜像站](https://npm.taobao.org/mirrors/python)来选择安装相关版本。

以下安装步骤建议先在Sandbox中测试。

1、 运行安装程序,此时的界面如下图所示。

学Python装本地还是虚拟机 python必须用虚拟机吗_python

 

2、强烈建议不要选择“Customize installation”,原因是部分无脑软件与模块,会使用缺省的安装路径,也就是第一个选择“Install Now”安装的目录。所以最好的选择就是第一个选项。此外,最好选择“Add Python 3.8 to PATH”,原因也是部分无脑的软件需要知道Python的路径。当然选择这个后会有警告,尤其是系统安装多个Python版本时,更是如此。我们假设操作系统里没有其它Python,因此选择这个是无风险的。

3、最后弹出如此界面。

学Python装本地还是虚拟机 python必须用虚拟机吗_python_02

 

4、一定要选择“Diable Path length limit”,用于克服长路径名带来的问题,也是对系统限制的修复。

5、最后按“Close”结束安装。

6、使用Powershell或者命令行,键入以下命令检测。

```powershell

python --version

```

或者直接输入命令python进入到Python交互式界面。不过退出时,一定要输入“exit()”或者“quit()”才能够退出。

至此一个完美的环境搭建完毕。我们可以再检查一下其它的环境。推荐下载[Rapid Environment Editor](https://www.rapidee.com/en/download),这也是笔者开发工具箱的一个重要组成,能够方便的对Windows的环境变量进行检测与设置。补充一句,Windows沙盘环境可以通过复制粘贴进行内外文件的传递。可以将值得保留的文件从沙盘环境中拷贝出来以便下次使用,免得浪费时间。

下篇将讲述如何在Windows下使用anaconda进行安装。