前言

对于开发者来说, 相比 Windows, Linux 系统下各类可用的开发工具是一个极大的优势, 使用 Linux 作为开发平台能够避免非常多的麻烦, 例如部署你的代码, 以及避免各种奇奇怪怪的 bugs. 然而, Windows 毕竟是桌面领域的老大哥, 相比 Linux, Windows 显然是一个更加易用的系统, 更重要的是, Office 与大部分游戏都只支持 Windows 平台. 那么能否做到二者兼得呢? 本文主要介绍在 WSL 环境中运行 Python 代码, 如果有必要, 你可以使用类似的方式, 处理其他不同的情况.

我在之前的一篇文章中讨论过一些关于 WSL 的问题, 但是随着 Windows 的不断更新, 原有的文章中已经有一部分信息发生了变化, 我们有了更新的方式来安装与配置 WSL, 因此就有了这一个教程.

这个教程的目的是做到 Step by step, 但是由于种种原因(例如由于我很早之前就已经安装了 WSL, 所以安装过程中的某些坑我可能没有记录), 可能有一些本文默认读者已经懂得而读者实际上并不明白的问题, 你可以联系我以寻求帮助或者到搜索引擎中寻找解答, 如果你能够访问 Disqus, 你也可以直接评论.

本文分为 6 个主要部分, 包括 WSL 的安装, WSL 配置, Python的安装与配置, Pycharm 配置, VSCode 安装与配置, 其他补充说明. 你可以挑选你感兴趣的章节按顺序进行阅读, 如果你对文中某些章节的内容已经了解, 那么跳过它. 特别地, Pycharm 以及 VSCode 两个章节中挑选一个章节阅读即可.

本文中以 text 形式出现的内容一般是你需要输入的内容或者使用的快捷键, 以

1
text

形式出现的内容一般是配置文件或者程序代码, 如果需要你对其进行操作, 通常会以注释形式给出. 此外本文中有一部分图片是我找的老图, 如果和你的计算机中显示的内容不一样, 请不要感到困惑.

WSL 的安装

本节主要参考了 msdn 中关于安装 WSL 的内容, 翻译了一部分我认为比较关键的步骤, 如果你有不了解的地方可以自行前往阅读.

关于 WSL 这里不进行更详细的介绍, 你可以把它理解成一个能在 Windows 桌面环境中运行的特殊的 Linux 发行版(distribution, 你可以把不同的发行版理解为不同手机厂商预装的系统, 虽然它们长的不一样, 用起来也区别很大, 但是都基于 Android), 对于 WSL, 大部分常见的 Linux 操作都是可用的, 如果你遇到了问题或者是新的需求, 我非常建议你使用搜索引擎, 也许并不总是你的原因导致了问题的发生, 同时我推荐你使用英语搜索, 搜索结果中的某些网站可以重点关注, 例如 StackOverflow, GitHub 等等, 如果你搜索的是中文, 那么 CSDN, 简书中的结果也可以进行参考. 如果你无法使用 Google, 那么 Bing 也将是一个很好的选择, 当然, 你也可以使用你喜欢的搜索引擎.

那么, 我们现在就开始安装 WSL 吧!

等等, 在此之前…

是的, WSL 并不适用与所有的计算机, 在安装之前, 你仍需要核实以下信息.

确认你正在使用正确的 Windows 版本

首先, 你需要确定自己正在使用 Windows 10, 如果你使用 Windows 7 或更早版本, 你可以使用虚拟机安装 Ubuntu, 由于篇幅所限, 本文不对此进行深入介绍, 你可以在搜索引擎中搜索关键字 “virtual machine Linux Python” 来寻求帮助. 如果我有时间的话, 也许会完善这一部分.

首先你需要打开设置界面, 这里有几个方法供你参考:

  • 按下 Windows 徽标键(一般位于左 Ctrl 右边, 下文简写为 Win, 例如 Win + S) + S, 输入 设置 并打开 “设置” 应用.

  • 在左下角的开始菜单按钮处右键, 找到设置选项.

  • 打开右下角的通知栏, 找到设置选项.

点击后你应当能看见如下界面:

设置界面

设置界面

选择图中红框标示的 “系统” 项, 并按照下图方法进行检查.

系统版本

系统版本

在上图中, 你可以看到以下几项:

  • 系统类型: 必须是 64-bit(64位) 系统, 否则无法安装.
  • Windows 规格
    • 版本: 这一数字应当大于 1607, 否则无法安装.
    • OS 内部版本: 这一数字前五位应当大于 14393, 否则无法安装.

以上要求的两个版本号是 Windows 周年更新版本号, 如果你的计算机低于这一版本号, 很可能是关闭了自动更新, 请检查更新(在 Win + S 中输入检查更新即可, 如果失败, 请检查网络).

当你完成了以上两步之后, 你的 Windows 系统就可以安装 WSL 了.

确认拥有足够的磁盘空间

当你确认你的计算机能够安装 WSL 之后, 请检查你的系统所在磁盘(一般是磁盘 C:), 我建议你预留至少 10GB 以上的空闲空间, WSL 本身并不需要这么多空间, 但是你可能需要在安装完成后, 在 WSL 中安装必要软件, 同时还需要预留一定空间给 Windows 系统使用, 因此请务必确保你的计算机具有足够空间.

确认你的网络是否良好

有时候, WSL 安装失败是因为连接失败, 由于远程服务器可能位于境外, 所以当你遇到安装失败的情况时, 不要惊慌, 请在搜索引擎中搜索关键词: “WSL install failed”.

确认你有足够的耐心

由于安装过程中有可能会遇到非常多的问题, 所以请放轻松并保持愉快的心情, 解决问题的过程是一个很有趣的体验, 不要害怕遇见困难的问题, 解决它从而你会得到很多提高.

打开 WSL 功能

当你确认你的电脑能够安装 WSL 之后, 你还需要做一些准备工作, 首先就是打开 WSL 功能, 这里提供两种方法:

  • 按下 Win + S 并输入 启用或关闭 Windows 功能, 打开如下界面(当然你也可以在控制面板中找到这项设置)并滑动至底部, 勾选 “适用于 Linux 的Windows 子系统” 复选框.
    启用或关闭 Windows 功能

    启用或关闭 Windows 功能

  • 在文件资源管理器左上角找到 “文件” 按钮, 单击打开并找到 “打开 Windows Powershell”, 点击右侧小三角形并选择使用管理员运行 powershell.
    使用管理员运行 powershell

    使用管理员运行 powershell

    复制以下指令, 在弹出窗口中输入以下命令或者在标题栏 右键->编辑->粘贴 以粘贴指令.
    1
    Enable-WindowsOptionalFeature -Online -FeatureName Microsoft-Windows-Subsystem-Linux

当出现如下窗口时, 你就完成了这一步的工作.

正式安装

还记得之前让你查找的 OS 内部版本号吗? 根据不同版本的 Windows 我们有不同的方法来安装 WSL.

当你的 OS 内部版本号大于 16299

恭喜你! 你可以直接在 微软应用商店 中找到几个不同的 Linux 发行版:

从上述三个发行版中选择你需要安装的(我们这里以 Ubuntu 为例), 点击链接, 你的浏览器将弹出如下窗口:

选择是, 接下来将会弹出微软商店对于发行版页面的窗口, 如图:

商店页面

商店页面

接下来你需要做的事情就是, 点击 “获取”, 然后等待下载完成. 然后点击启动, Windows 将自动执行 WSL 的安装, 这可能需要一段比较长的时间.

安装 Ubuntu

安装 Ubuntu

当出现如下界面时, 说明 WSL 以及安装完成, 并要求你设置一个账户, 这个账户不需要和计算机的用户名一致.

设置用户

设置用户

输入用户名和密码, 并重复密码.

需要注意的是, 当你输入密码时你会发现屏幕上没有反应, 不要认为是你的计算机出现问题了, Linux 中输入密码的时候屏幕是不会有任何显示的, 直接输入然后回车即可.

设置用户名与密码

设置用户名与密码

这样, 你就完成了 WSL 的安装! 你可以在开始菜单的最近添加中找到 Ubuntu 的图标, 如下图:

接下来你可以跳转到 WSL 配置 来进行进一步的工作.

当你的 OS 内部版本号小于 16299

当你的计算机系统较老, 你可以采取另一种方式安装.

还记得我们刚才的设置界面吗(here)? 这次我们选择 “更新与安全”, 并选择其中的 “针对开发人员选项” 启用开发人员模式, 如图所示.

启用 开发人员模式

启用 开发人员模式

然后, 按下 Win + R 输入 cmd, 进入命令提示符, 输入 bash, 系统将询问你是否安装.

安装完成之后, 会要求你设置用户名, 具体请参考上一小节.

使用这种方式安装完成之后, Linux发行版将储存在 %localappdata%\lxss\ 目录

WSL 配置

配置 SSH

编辑配置文件

当你完成了 WSL 的安装之后, 打开命令提示符或者开始菜单中的 Ubuntu, 进入如下界面:

输入 sudo nano /etc/ssh/sshd_config 输入密码并进入编辑界面:

使用方向键调整光标, 找到这一行:

1
Port 22

将 Port 之后的数字修改为任意一个大于 1024 的数字, 例如这里我们在 “22” 后面添加两个 “2”, 得到下图结果:

按下方向键往下翻, 找到

1
PubkeyAuthentication yes

将其修改为 PubkeyAuthentication no, 如图:

按下 Ctrl + O 保存, 提示 “File Name to Write: /etc/ssh/sshd_config”, 按下 Enter 确定, 如果提示权限不足, 请确定你的上一条命令中是否含有 “sudo”. 当出现 “[ Wrote 88 lines ]” 之后, 按下 Ctrl + X 退出.

开启 SSH

在终端(命令行)中依次输入如下几条命令, 你可能需要输入密码.

1
2
3
sudo mkdir /var/run/sshd
sudo chmod 0755 /var/run/sshd
sudo /usr/sbin/sshd -d

当出现 “Server listening on :: port 2222.” 时, 说明 SSH 已经成功启动了.

请注意, 当你正在使用 SSH 时请务必不要关掉这个窗口, 否则 SSH 将终止运行.

如果你觉得一直有个黑框呆在桌面实在是太丑了, 有没有什么办法能去掉这个黑框框呢? 你可以在搜索引擎中了解更多知识, 并自己解决这个问题.

终端的美化(可选)

本文提供两种方式对终端进行美化, 请注意, 这一部分属于额外内容, 你可以跳过这部分继续往下而不会影响功能.

Python 安装与配置

这一部分网上有许多的信息, 但大部分都是直接安装 Python, 这当然是可以的, 但如果你学习 Python 的主要目的是进行数据处理或者研究机器学习, 那么本文十分建议你直接安装一个 Python 的发行版: Anaconda, 在这里你可以把发行版理解成有人打包了一些常用的 Python 第三方模块, 让你一次性装好, 这样以后就可以避免到要用的时候再去安装对应的第三方包.

什么是第三方包: 在 Python 的哲学中, 认为编程应当最大限度利用别人的智慧, 很多时候你并不需要具体实现一个算法的细节, 因为一件很显然的事情是, 很多时候你想做的东西别人已经作过了, 那么为了利用别人的成果, 有一些人就为 Python 提供了许多已经造好的轮子 (语出”不要重复造轮子”, 意思是不要做别人已经做过的东西), 你可以直接使用这些包, 这样就能大大缩减你的代码量, 节约程序员的时间, 而把精力放在真正应当做的事情上.

关于选择 Python 2 还是 Python 3

网上有许多关于 Python 版本的争论, 这里不做详细解释, 直截了当地给出建议:

如果你需要使用 Python 2 的环境或者已经有了相当数量的 Python 2 代码, 你可以选择 Python 2 的环境, 例如如果你所在的公司在具体生产环境中需要使用 Python 2.

否则, 强烈建议你使用 Python 3. (2018.4.18 Update: Python 2 将在 2020 年被停止支持)

事实上, 如果你需要同时使用两个版本, 也有一些工具可以实现, 甚至 Anaconda 本身就有这样的功能, 但这不是本文要讨论的重点, 你可以自行至搜索引擎搜索 “Python virtual env” 或者 “Python 虚拟环境”.

在 Windows 中安装 Anaconda(可选)

打开浏览器, 进入 Anaconda 的下载页面, 单击 “Download For:” 后面的 Windows 图标, 找到你使用的 Python 版本, 点击 “Download” 下载.

如果无法打开页面或者下载速度过慢, 你可以到 清华大学开源软件镜像站 翻到页面底部下载对应版本的 Anaconda, 例如 “Anaconda3-5.0.1-Windows-x86_64.exe” (或者是任意新的版本, 记住是 Windows x86_64 版本就行了).

下载完成后打开进行安装, 由于是图形界面因此一直按下一步就可以了. 需要注意的是, 如果出现了类似 “Add to PATH” 的复选框, 请勾选 (新版本在勾选这一复选框时字体会变红, 不用紧张, 不会造成什么后果的).

当安装完成之后, 按下 Win + R, 输入 cmd 并单击打开, 进入命令提示符, 输入 python, 当出现如下界面时, 恭喜你你已经在 Windows 下成功安装了 Anaconda.

(注意图中的 Anaconda 字样)

(注意图中的 Anaconda 字样)

如果你不需要使用 WSL 开发, 你可以直接跳转到 Pycharm 配置 或者 VSCode 安装与配置 并选择其中涉及 Windows 开发的部分阅读.

在 Linux 中安装 Anaconda

与 Windows 略有不同, 本文提供两种 Linux 下 Anaconda 的安装方法, 本文推荐第二种方法. 这部分内容参考了 在 WSL 内安装 Anaconda.

方法1:

  1. 进入 Anaconda 的下载页面, 点击 Linux 图标, 下载所需版本.
  2. 文件下载后, 找到文件所在位置, 你可以点击 “在文件夹中显示” 或者其他类似按钮, 或者直接在资源管理器中进入下载目录.

  3. 打开 WSL, 进入文件下载目录.
    • 你可以使用 cd(choose directory) 命令进入指定目录.
    • 例如: 你的文件被下载到了 “D:\DOWNLOAD” 文件夹, 那么在 WSL 中输入 cd /mnt/d/DOWNLOAD/ 进入目录, 输入 bash Anaconda 并按下 Tab(一般位于字母键 Q 左边) 让计算机自动补全文件名(例如 “bash Anaconda3-5.0.1-Linux-x86_64.sh”), 按回车开始安装, 请注意, Linux 中大小写是不同的符号, 不要混淆.

方法2:

  1. 在下载页面, 不要单击下载, 而是右键, 选择 “复制链接地址”.
  2. 打开 WSL, 输入 wget(注意有个空格), 按一下右键粘贴刚刚复制的地址, 回车开始下载.
  3. 等待下载完成.
  4. 下载完成后, 输入 bash Anaconda 并按下 Tab 键自动补全文件名(例如 “bash Anaconda3-5.0.1-Linux-x86_64.sh”), 按回车开始安装.

正常情况下, 按下回车开始安装之后, 终端(WSL 所在的黑框)将显示以下信息:

1
2
3
4
5
6
Welcome to Anaconda3 5.0.1 (by Continuum Analytics, Inc.)

In order to continue the installation process, please review the license
agreement.
Please, press ENTER to continue
>>>

根据提示, 按回车继续, 一路进行下去即可. 同时系统会提示你安装的路径, 记下这个路径.

1
2
Anaconda3 will now be installed into this location:
/home/username/anaconda3

继续安装直到出现:

1
2
Do you wish the installer to prepend the Anaconda2 install location
to PATH in your /home/nickChen/.bashrc ? [yes|no]

输入 yes 并回车.

当安装结束后, 输入 python, 如果成功进入 Python 界面则安装成功.

1
2
3
4
Python 3.6.0 |Anaconda 4.3.1 (64-bit)| (default, Dec 23 2016, 12:22:00)
[GCC 4.4.7 20120313 (Red Hat 4.4.7-1)] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>

Pycharm 配置

安装

Pycharm 有两种安装方式, 一种是直接下载 Pycharm 安装, 另一种是使用 JetBrains Toolbox 安装, 一般情况下如果你不需要使用 JetBrains 全家桶的话直接下载 Pycharm 安装就可以了.

有三个版本可供选择:

通常选择社区版即可, 如果你或者你的公司购买了专业版, 你也可以使用专业版. 教育版是教学式的, 集成了一个学习平台, 适合学生使用. 更多请参考官方页面以及 这个知乎回答. 请注意: 以下文章的的部分功能可能仅专业版提供.

本文建议你按照 这篇文章 中的方式安装 Pycharm, 具体的安装过程本文不再赘述, 但需要说明的是, 这篇文章你可以只阅读前半部分(到字体配置为止, 接下来的部分属于一些可选的配置)和最后一部分(远程连接编程). 请尽量使用正版 (专业版学生免费, 有 edu 邮箱即可).

网上也有一些其他的 Pycharm 教程, 你可以进行进一步的学习, 这里提供几个链接:

在 Windows 下使用 Pycharm 开发 Python 程序 (Update 2018.02.13: 更改新建项目的截图到新版本 Pycharm)

当你已经完成安装 Python 程序之后, 打开 Pycharm, 选择 “Create New Project”.

选择 “Pure Python”, 选择你想要新建的项目所在位置, 以及 Python 解释器位置. 如果你不打算新建一个虚拟环境, 请选择 ‘Existing interpreter’ 项 (虚拟环境的作用是分割不同项目的环境, 避免发生某些错误, 如果不是为了开发大型复杂项目的话可以直接使用系统中已经安装好的 Python 解释器).

一般来说如果你在之前的安装中已经将 Python 添加至 PATH(Add to PATH), 那么解释器位置会自动填写, 如果没有, 请点击右侧的设置图标, 选择 “Add local” 并找到 python 所在位置(也就是你安装 Anaconda 的位置), 选择目录下的 “python.exe”.

自此, 你就进入了 Pycharm 界面, 在左侧 Project 区域右键->New->Python File, 输入文件名(例如 “hello_world”)并点击 “OK”, 这样你就新建了一个 “.py” 文件.

输入一行代码 print('hello world!'), 找到右上角的一个小三角形, 点击并选择 “Edit Configuration” (请注意界面底部还在 index 的时候这个按钮可能无法按下).

进入设置界面, 点击左上角的 “+” 并选择 “Python”

在右侧显示的界面中找到 “Script” 项, 输入你的程序源文件, 也就是你在前文新建的文件, 点击 “OK”

这时候你会发现右上角的几个原本灰色的按钮变成了绿色.

点击其中第一个绿色三角形, Pycharm 就会弹出运行结果.

自此, 你就可以使用 Pycharm 在 Windows 下开发 Python 程序了. 如果需要返回欢迎界面, 点击左上角的 File->Close Project.

2018.02.13 更新:

新版本更新后 (也许以前就有只是我不知道), 有个更加简便的方法, 在 Pycharm 索引完成后, 打开需要运行的脚本, 在空白处右键, 你可以看到一个 “Run {Script name}” 的选项, 选择这一项或者直接使用快捷键 Ctrl + Shift + F10 运行当前脚本.

这个方法相比之下方便且不容易出错, 十分推荐.

使用 WSL 远程开发配置

使用 WSL 开发与使用 Windows 所需设置的步骤是大体一致的, 不同的地方主要如下.

首先你需要确定是否打开了 SSH, 如果没有打开, 请打开 WSL, 并输入 sudo /usr/sbin/sshd -d, 可能需要你输入密码. 注意: 不要关闭这个正在运行 SSH 的终端, 直到你不再使用它.

当你在 Pycharm 欢迎界面点击 “Create New Porject” 并弹出界面要求你选择新建项目所在位置和 Python 解释器位置时, 选择解释器右侧的设置按钮, 在弹出的菜单中选择 “Add Remote”. 选择 “SSH Credentials”, 并输入相关信息, 如图:

点击 “OK” 然后用同样的方法编辑设置文件即可运行.

请注意, 这项功能可能仅限于专业版 Pychrame, 并且可能出现一些其他的问题, 我并没有实际配置过 Pycharm 的远程开发, 如果你遇到了问题, 可能 这篇文章 会帮到你. 或者你也可以到搜索引擎中寻求帮助.

使用 Pycharm 内置终端打开 WSL 运行 Python 代码

有时你可能觉得配置 SSH 仍然还是很麻烦, 不如直接在 WSL 内进入当前目录运行脚本. 事实上, Pycharm 已经自带了一个终端, 你可以直接在这个终端中启动 WSL, 然后运行你的代码.

其中项目所在目录, 你可以将 Windows 的目录的盘符, 转换成 “/mnt/盘符”, 去掉冒号并使用斜杠/而不是反斜杠\, 例如 C:\Windows -> /mnt/c/Windows (请记得 Linux 是大小写敏感的). 在运行源码之前, 请先安装 Python 或者是 Anaconda.

我们之前多次提到, 在使用 SSH 时不要关闭 WSL 的窗口, 但一个黑框呆在那会总是会显得很难看, 看完这一小结的内容, 你可能会想到, 为什么不在 Pycharm 的内置终端中运行 SSH 呢? 是的, 这是一个很好的解决方案, 但仍显得有些笨重, 每次打开 Pycharm 都需要重新进入 WSL 启用 SSH, 有没有更好的方法呢? 你可以到互联网中查找更多方案, 如果你愿意折腾的话 (例如开机启动一个隐藏窗口的 WSL 程序).

VSCode 安装与配置

VSCode 安装

这里提供一个参考链接: 用VSCode写python的正确姿势

你可以前往预览最终效果以及详细的配置过程, 本文只介绍必要的部分.

首先是前往 下载页面 下载对应版本的 VSCode (也就是 Windows 版), 安装完成之后, 你会看到一个欢迎界面. (2018.4.18 Update: 现在安装 Anaconda 时会询问你是否一并安装 VSCode, 如果你没有其他需求的话, 可以选择和 Anaconda 同时安装)

欢迎界面

欢迎界面

安装扩展

按下 Ctrl + P, 并输入 ext install python. (2018.4.18 Update: 或者随便打开一个 “.py” 文件, VSCode 会询问你是否安装扩展, 选择安装即可)

选择最靠前的扩展进行安装, 本文建议你安装 “Python” 和 “Python for VSCode” 两个拓展 (或者只安装第一个), 点击安装, 完成之后如图, 有时候可能由于网络原因安装失败, 多次尝试即可.

用同样的方法你可以安装一些其他的扩展, 包括界面的外观主题, 其他语言的拓展, 甚至图标都可以安装. 下面给出比较推荐的拓展:

  • VSCode-icons: 图标扩展, 安装之后可以在工作区根据文件类型显示图标, 同类图标还有 “material-icons”, 你可以选择你喜欢的图标. (2018.4.18 Update: 现在我使用的是 VSCode Great Icons, 同样十分值得推荐)
  • One Dark Pro: 一个黑色的主题, Atom(另一个和 VSCode 类似的编辑器)的默认主题 (同样的你也可以选择 “One Monokai Theme”). (2018.4.18 Update: 现在我使用的是 “Solarized Dark” 主题)
  • Markdown Preview Enhanced: 一个非常强大的 Markdown 拓展, 如果你懂得什么是 Markdown, 那么十分推荐你安装这个拓展. (2018.4.18 Update: 现在 “Markdown All in One” 更值得推荐)

VSCode 配置(可选)

当你完成了扩展的安装之后, 接下来点击左上角的 文件(或者 Files, 取决于你安装的什么版本)->首选项->设置, 弹出了 用户设置 界面, 下面给出建议的配置.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
{
"editor.renderWhitespace": "all",
"files.exclude": {
"**/.git": true,
"**/.svn": true,
"**/.hg": true,
"**/CVS": true,
"**/.DS_Store": true,
"**/*.pyc": true
},
"python.formatting.provider": "yapf",
"workbench.colorTheme": "One Dark Pro Vivid",
"files.autoSave": "onFocusChange",
"terminal.integrated.shell.windows": "C:\\Windows\\System32\\cmd.exe",
"markdown-preview-enhanced.previewTheme": "night.css",
"markdown-preview-enhanced.singlePreview": false,
"workbench.iconTheme": "vscode-icons",
"editor.fontFamily": "Consolas, monospace, 'Noto Sans CJK SC'",
"markdown.preview.fontFamily": "-apple-system, BlinkMacSystemFont, 'Segoe WPC', 'Segoe UI', 'HelveticaNeue-Light', 'Ubuntu', 'Droid Sans', 'Noto Sans CJK SC', sans-serif, '思源宋体'",
"git.enableSmartCommit": true,
"files.insertFinalNewline": true
}

2018.4.18 Update: 新的配置文件, 其中包含一些涉及语言方面的设置.

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
{
"editor.fontFamily": "Fira Code, Microsoft YaHei",
"editor.fontLigatures": true,
"workbench.iconTheme": "vscode-great-icons",
"files.autoSave": "onFocusChange",
"workbench.colorTheme": "Solarized Dark",
"editor.rulers": [
120
],
"fileheader.Author": "zhzyx",
"fileheader.LastModifiedBy": "zhzyx",
"explorer.confirmDelete": false,
"go.buildOnSave": "off",
"go.docsTool": "gogetdoc",
// "terminal.integrated.shell.windows": "C:\\WINDOWS\\System32\\cmd.exe"
}

其中每个设置项的含义大多可以从字面上看出来, 你也可以在用户设置界面上方的搜索框中输入这些设置的名称来查看它们的实际意思, 你可以选择你感兴趣的进行配置. 注意最后一项的末尾是不需要逗号的. 如果你不明白这些配置项的含义, 你完全可以无视这一部分, 这些配置都不会影响实际的功能, 而只会影响外观和一些细节上的体验(例如自动保存, 按下 Tab 键自动转换为四个空格, 等等. 注意在字体设置中你只能选择已经安装过的字体).

Coding & Running

完成配置之后, 你就可以正式开始写代码了, 单击左上角的 文件->新建文件(或者使用快捷键 Ctrl + N), 然后 VSCode 将弹出一个新标签页(一般是 “Untitled-1”), 接下来你需要保存这个文件, 按下 Ctrl + S 保存文件, 在保存类型中选择 Python 并选择要保存的位置, 本文示例保存在 “D:\hello_world.py”. 按下确定以返回至 VSCode, 在编辑器中输入 print("hello world").

接下来有几种不同的方式来运行你的代码, 在运行之前请确定你在对应的系统中安装了 Python 解释器.

使用调试方式运行代码

按下 F5(一般位于数字 “5” 上方), 进入调试模式. 如果你是第一次运行 VSCode 会让你选择调试环境, 选择 Python 即可.

再次按下 F5 或者点击红框内的绿色三角形. 程序就会在界面下方的调试控制台输出结果了. (请注意, print 语句的输出结果位于 调试控制台 而不是输出选项卡)

在内置终端中运行代码

需要注意的是, 由于调试本身需要占用不少系统资源, 如果你的代码需要大量的系统资源, 使用调试模式可能会导致运行速度极慢甚至 VSCode 无响应, 此时建议你选择在终端中运行你的代码. 点击界面上方的 查看->集成终端, 或者使用快捷键 `Ctrl+``(数字 1 左侧, Esc 下方的按键) 打开终端.

在终端中输入 python D:\hello_world.py(前文提到过这是示例保存的位置, 请灵活运用, 如果你是以 “打开文件夹” 方式运行的 VSCode, 那么这个集成终端会自动切换到打开的文件夹), 按回车运行, 得到输出结果.

在 WSL 中运行代码

同样的, 如果你想在 WSL 中运行你的代码, 在终端中输入 Ubuntu 打开 WSL, 输入 python /mnt/d/hello_world.py 回车以运行代码. (还记得 使用 Pycharm 内置终端打开 WSL 运行 Python 代码 里的内容吗, 这两处的操作是一样的, 只是前文是先进入了 .py 文件所在的目录, 然后输入 “python filename” 运行代码, 而这里没有进入文件所在的目录, 你就需要告诉计算机文件在哪, 也就是要在文件名之前添加路径信息)

自此, 你就可以在 VSCode 中运行 Python 代码了, 至于进一步的调试(如何创建断点, 调试工具的使用), 语法分析, 定义跳转, 搜索, 项目文件夹乃至 git 的使用就有待你进一步学习与发现了.

其他补充说明

由于时间和精力所限, 本文只能把最为基础的内容呈现给读者, 而如此简略的介绍就导致了 Pycharm 和 VSCode, 包括 Linux 的精髓都无法体现, 尤其是考虑到读者可能仅仅是需要能在 Linux 上跑得动 Python 代码, 所以对于 Linux 的一些基本操作都没有涉及, 如果你在这些问题上面存在疑问, 不要羞于向搜索引擎发问.

如果你想要学习 Python, 这里推荐几个教程, 包括文本教程与视频教程.

如果你需要练手的项目:

如果你想进一步了解 Linux, 你也可以参考以下几个知乎问题:

最后, 请记得, 大部分程序员最重要的两项技术: 搜索 与 英语, 请一定要善于使用搜索引擎:

事实上, 甚至只需要学会 “site” 语法, 你的搜索体验就会有一个很大的提升.

最后, 如果你有足够的时间的话, 我非常建议你系统地学习计算机科学, 你可以到 大学计算机体系 - 网易云课堂 里挑选你感兴趣的课程, 偷偷说一句, 你在其中可以找到 “Python 程序设计” 这门课程, 如果你的时间充足, 这将是一个足够好的入门教程. 在使用网易云课堂时, 请多多使用视频加速功能, 这能够节约你很多时间.

特别地, 如果你学习 Python 的目的是为了进行数据处理, 你可能还需要学习 pandas, numpy 等 Python 第三方包以及 Jupyter Lab/Notebook 环境 这些都属于进阶内容, 相信你在需要学习这些内容时, 一定已经清楚自己想要什么东西并能在互联网上找到所需要的知识了.