以后再也不用“教程”:让人举一反三的python配置环境过程 + 超简单原理概括!

2020-11-19 10:54:54 浏览数 (1)

前言: 前一阵子至少指导了5位学弟学妹小伙伴配置 python 环境。两年前我入门 python 时,也得照着互联网上的资料,一步一步“照猫画虎”;为什么现在自己可以“凭感觉”一气呵成了呢?我想,原因必然是自己对于编译过程等知识有所了解。本文将用白话讲解 python 编译运行过程(计算机如何看懂并执行我们写的代码的),引出配置环境的原理,让大家从此告别“教程”,以后可以随心配置任何的语言环境。

文章章节:

•1 “远古时代”,程序猿都要用“命令行”•2 我们安装的 python 程序实际上就是一个编译器,将我们的代码转换成机器能看懂的机器码•3 配置环境,实际上就是为了让计算机可以随时随地运行编译器•4 拓展:编译器和编辑器有本质区别,我们需要一个能帮助我们偷懒的“编辑器”

1 “远古时代”,程序猿都要用“命令行”

在七八十年代,电脑还并未像现在这么普及,原因除了当时的电脑又贵性能又低之外,还因为其学习成本太高:因为人们需要使用“命令行”(也叫控制台、终端)来操作,而非鼠标 图形界面。

所谓命令行,就是通过输入命令,来控制计算机尽管现在你可以使用鼠标和图形界面做很多事,但是对于写程序的同学来讲,时至今日,命令行依然有着鼠标无可比拟的优势,比如减少重复命令与操作便捷等等。(你可以使用 Win R,并输入cmd来启动 windows 中的命令行)

如上图,我的命令行进入了C:UsersDellDesktopshow这个路径(你可以把“路径”理解为文件夹),在这个文件夹里,有一个视频文件叫做1.mp4,此时我们输入这个文件的名字并回车,则相当于使用鼠标双击了这个视频文件,将其打开。

了解了“命令行”这个概念,我们再来看看计算机为什么能看懂我们写的代码?

2 我们安装的 python 程序实际上就是一个编译器,将我们的代码转换成机器能看懂的机器码

编程语言有很多分类维度:

•静态型、动态型;•强类型、弱类型;•编译型、解释型。

我们没必要陷入“哪个好”的纠结中,毕竟,绝大部分编程语言的诞生都来自特定的需求与时代背景。换句话说,编程语言五花八门,却各有千秋。

但是,编程语言都离不开如下原则:

•编程语言是人类写出来的,是用于命令机器的工具,因此其本身具有逻辑性;•机器看不懂什么逻辑性,只看得懂0101010或者说为地址0xFFFF赋值0x3AB2这样的“鬼话”;•因此,任何编程语言都需要有一个“人话到鬼话的转换过程”,才能执行。

C 语言为例,我写一个程序放在C:UsersDellDesktopshow,程序叫做cppHello.cpp

代码语言:javascript复制
#include <stdio.h>

int main(){
    printf("Hello, PiperLiu! This is C  .");
    return 0;
}

然后命令行中:

•输入g cppHello.cpp,表示使用 g 编译器对这个 cpp 文件进行“转换”;这个步骤后,该文件夹下就多了一个a.exe文件,这个文件是g 这条命令生成出来的,只有电脑能看懂并执行;•输入 a.exe ,你可以看到程序执行,如下图。

对于我们今天的主角 python 而言,输入 python 文件名 就可以实现编译 运行的功能。我们管这种能把“人话转换成到鬼话”的工具叫做编译器。对于 C 来讲,这个编译器可以是 g ,对于 python 来讲,它是 python

但是,我们的C:UsersDellDesktopshow文件夹下并没有 python.exe 或者 g .exe 这样的程序呀!为什么我可以运行 [g 文件名] 而不报错呢?这就牵扯到【环境配置】这个过程了:配置了环境,我们的电脑才可以随时随地(在任何路径下)运行类似g 或者python这样的编译器。

3 配置环境,实际上就是为了让计算机可以随时随地运行编译器

配置环境的过程各个“教程”几乎都一样:

•右键“我的电脑”;•“高级系统设置”;•高级-“环境变量”;•“新建”。

(当然,现在 Anaconda 有了 add to path 选项,可能自动为我们进行这一步)

这一步是什么意思呢?

•我们使用命令行进入任何一个文件夹,敲入命令,比如1.mp4;•此时计算机将寻找该文件夹下有没有这个1.mp4程序;•没有的话,计算机进入“环境变量”进行寻找,有的话,执行,再没有的话,报错。

比如,我将放置了 1.mp4 的文件夹 C:UsersDellDesktopshow 添加为系统变量,如下图。

随后,我就可以在任何一个文件夹中调用C:UsersDellDesktopshow中的任何文件了。比如,我打开一个新命令行,进入一个空文件夹,输入1.mp4,也能打开1.mp4这个视频!

那么,我们所谓“配置语言环境”,其目的就是为了让电脑能在任何时候都调用python这样的编辑器。因此,我们只需将放置 python 的文件夹作为一个新的系统变量即可。

你会发现,无论是你从官网下载 python 还是 Anaconda ;安装后都会有个文件夹里有 python.exe 以及 pythonw.exe 这样的文件。那么我们要做的,自然就是将这个文件夹放进系统变量。

由此,我们的“安装语言”/“配置环境”工作完成。你会发现,其逻辑和步骤其实都非常简单,用不着别人手把手教。只有两步:

•下载编译器并安装,可以是 python.org 上的原生 python ,也可以是 Anaconda ;•配置环境,让计算机可以随处运行你的 python 编译器,将你写的 某某.py 文件编译成机器码,并且执行。

C java等一众语言,同理。

4 拓展:编译器和编辑器有本质区别,我们需要一个能帮助我们偷懒的“编辑器”

编译器是什么,前文已讲过;那么编辑器呢?

所谓编辑器,就是方便程序员写代码的东西,本质上是文本编辑器。

诚然,有了编译器,你用记事本写代码都可以,反正编译器编译后,大家都是一样的机器码;但是在追求效率的21世纪,好的文本编辑器带来的效率收益可以是次方数量级的。

编辑器我推荐自己最喜欢的 VS Code ,轻量可扩展。我将在以后根据需求为小白进行讲解。

先把环境配置好吧!祝顺利!

0 人点赞