g++ 安装python_以后再也不用“教程”:让人举一反三的python配置环境过程 + 超简单原理概括!...
前言: 前一阵子至少指导了
5
位学弟学妹小伙伴配置 python 环境。两年前我入门 python 时,也得照着互联网上的资料,一步一步“照猫画虎”;为什么现在自己可以“凭感觉”一气呵成了呢?我想,原因必然是自己对于编译过程等知识有所了解。本文将用白话讲解 python 编译运行过程(计算机如何看懂并执行我们写的代码的),引出配置环境的原理,让大家从此告别“教程”,以后可以随心配置任何的语言环境。
文章章节:
•1 “远古时代”,程序猿都要用“命令行”•2 我们安装的 python
程序实际上就是一个编译器,将我们的代码转换成机器能看懂的机器码•3 配置环境,实际上就是为了让计算机可以随时随地运行编译器
•4 拓展:编译器和编辑器有本质区别,我们需要一个能帮助我们偷懒的“编辑器”
1 “远古时代”,程序猿都要用“命令行”
在七八十年代,电脑还并未像现在这么普及,原因除了当时的电脑又贵性能又低之外,还因为其学习成本太高:因为人们需要使用“命令行”(也叫控制台、终端)来操作,而非鼠标+图形界面。
所谓命令行,就是通过输入命令,来控制计算机
。尽管现在你可以使用鼠标和图形界面做很多事,但是对于写程序的同学来讲,时至今日,命令行依然有着鼠标无可比拟的优势,比如减少重复命令与操作便捷等等
。(你可以使用 Win+R
,并输入cmd
来启动 windows 中的命令行)
如上图,我的命令行进入了C:\Users\Dell\Desktop\show
这个路径(你可以把“路径”理解为文件夹),在这个文件夹里,有一个视频文件叫做1.mp4
,此时我们输入这个文件的名字并回车,则相当于使用鼠标双击了这个视频文件,将其打开。
了解了“命令行”这个概念,我们再来看看计算机为什么能看懂我们写的代码?
2 我们安装的 python
程序实际上就是一个编译器,将我们的代码转换成机器能看懂的机器码
编程语言有很多分类维度:
•静态型、动态型;•强类型、弱类型;•编译型、解释型。
我们没必要陷入“哪个好”的纠结中,毕竟,绝大部分编程语言的诞生都来自特定的需求与时代背景。换句话说,编程语言五花八门,却各有千秋。
但是,编程语言都离不开如下原则:
•编程语言是人类写出来的,是用于命令机器的工具,因此其本身具有逻辑性;•机器看不懂什么逻辑性,只看得懂0101010
或者说为地址0xFFFF赋值0x3AB2
这样的“鬼话”;•因此,任何编程语言都需要有一个“人话到鬼话的转换过程”
,才能执行。
以C++
语言为例,我写一个程序放在C:\Users\Dell\Desktop\show
,程序叫做cppHello.cpp
:
#include 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:\Users\Dell\Desktop\show
文件夹下并没有 python.exe
或者 g++.exe
这样的程序呀!为什么我可以运行 [g++ 文件名] 而不报错呢?
这就牵扯到【环境配置】这个过程了:配置了环境,我们的电脑才可以随时随地(在任何路径下)运行类似g++或者python这样的编译器。
3 配置环境,实际上就是为了让计算机可以随时随地运行编译器
配置环境的过程各个“教程”几乎都一样:
•右键“我的电脑”;•“高级系统设置”;•高级-“环境变量”;•“新建”。
(当然,现在 Anaconda 有了 add to path
选项,可能自动为我们进行这一步)
这一步是什么意思呢?
•我们使用命令行进入任何一个文件夹,敲入命令,比如1.mp4
;•此时计算机将寻找该文件夹下有没有这个1.mp4
程序;•没有的话,计算机进入“环境变量”进行寻找,有的话,执行,再没有的话,报错。
比如,我将放置了 1.mp4
的文件夹 C:\Users\Dell\Desktop\show
添加为系统变量,如下图。
随后,我就可以在任何一个文件夹中调用C:\Users\Dell\Desktop\show
中的任何文件了。比如,我打开一个新命令行,进入一个空文件夹,输入1.mp4
,也能打开1.mp4
这个视频!
那么,我们所谓“配置语言环境”,其目的就是为了让电脑能在任何时候都调用python
这样的编辑器。因此,我们只需将放置 python
的文件夹作为一个新的系统变量即可。
你会发现,无论是你从官网下载 python
还是 Anaconda
;安装后都会有个文件夹里有 python.exe
以及 pythonw.exe
这样的文件。那么我们要做的,自然就是将这个文件夹放进系统变量。
由此,我们的“安装语言”/“配置环境”工作完成。你会发现,其逻辑和步骤其实都非常简单,用不着别人手把手教。只有两步:
•下载编译器并安装,可以是 python.org 上的原生 python ,也可以是 Anaconda ;•配置环境,让计算机可以随处运行你的 python 编译器,将你写的 某某.py
文件编译成机器码,并且执行。
C++
、java
等一众语言,同理。
4 拓展:编译器和编辑器有本质区别,我们需要一个能帮助我们偷懒的“编辑器”
编译器是什么,前文已讲过;那么编辑器呢?
所谓编辑器,就是方便程序员写代码的东西,本质上是文本编辑器。
诚然,有了编译器,你用记事本写代码都可以,反正编译器编译后,大家都是一样的机器码;但是在追求效率的21世纪,好的文本编辑器带来的效率收益可以是次方数量级的。
编辑器我推荐自己最喜欢的 VS Code ,轻量可扩展。我将在以后根据需求为小白进行讲解。
先把环境配置好吧!祝顺利!
g++ 安装python_以后再也不用“教程”:让人举一反三的python配置环境过程 + 超简单原理概括!...相关推荐
- 以后再也不用看“教程”!概括【配置环境】的原理,小白也能举一反三的python配置环境过程!
前言: 前一阵子至少指导了5位学弟学妹小伙伴配置 python 环境.2年前我入门 python 时,也得照着互联网上的资料,一步一步"照猫画虎":为什么现在自己可以"凭 ...
- 爱迈分享 海量淘宝天猫优惠券网站微信公众号自主搜索 再也不用加入烦人的QQ微信群了
关注微信公众号"爱迈分享"或者扫西边二维码,大家可以自己输入相关信息搜索海量第一手淘宝内部优惠券 或者电脑访问 www.imaimaimai.cn 再也不用加入各种QQ优惠券群了, ...
- python画熊猫头_超简单的熊猫头简笔画原创教程步骤
导读:小编根据大家的需要整理了一份关于<超简单的熊猫头简笔画原创教程步骤>的内容,具体内容: 熊猫生活在海拔2600-3500米的茂密竹林里,那里常年空气稀薄,云雾缭绕,气温低于20℃.那 ...
- g++ 安装python_卧槽,又一款Python神器
写Python代码最头疼的两件事是什么? 我总结了两点 1.Windows 平台安装第三方包经常失败的问题,还记得第一次安装mysql依赖包时的那个场景吗?怎么都装不上. 2.虚拟环境切换的问题,如果 ...
- 怎么安装python_零基础入门必看篇:浅析python,PyCharm,Anaconda三者之间关系
今天为大家带来的内容是:零基础入门必看篇:浅析python ,PyCharm,Anaconda三者之间关系 众所周知,Python是一种跨平台的计算机程序设计语言,简单来说,python就是类似于C, ...
- Centos7 yum安装Python3.6环境,超简单
原文链接:https://blog.51cto.com/wenguonideshou/2083301 配置好Python3.6和pip3 安装EPEL和IUS软件源 yum install epel- ...
- pythonweb搭建教程_基于Centos搭建Python Web 环境搭建教程
CentOS 7.2 64 位操作系统 安装 setuptools 工具 安装 因为之后我们需要安装 Django ,而 Django 需要用这个工具,所以我们需要先安装 setuptools 工具. ...
- deepin efi 启动u盘_如何安装Deepin国产操作系统?只需一个U盘就够了,超简单
2019年快结束了,距离微软对Win7系统停止服务的日期也是越来越近了.与此同时,人们对国产操作系统的热度和期望值也是越来越高.在诸多国产操作系统中,Deepin系统是目前知名度最高的一个,而且无论在 ...
- OPPOR9Android 6.0过程,超简单 OPPOR9升级Android 6.0系统 详细教程
网络配图OPPOR9可以说是红火半片天,前段时间O粉还在为OPPO放弃R9愤怒呢,这不就在昨天OPPO官方社区OS产品经理若雨菲菲刚刚发布了OPPOR9全网通基于Android 6.0的ColorOS ...
最新文章
- docker load 出错 open /var/lib/docker/tmp/docker-import-837327978/bin/json: no such file or directory
- NLP(Natural Language Processing)
- 技术流 | 手把手教你用Python设计一个命令行界面
- 【PAT乙级】1029 旧键盘 (20 分)
- android应用框架搭建之BaseActivity
- java main启动spring_gradle 搭建springMVC项目,main函数启动
- 1024看到这篇文章的程序员,能不能把你的电脑桌面右下角截图回复
- 23种设计模式之命令模式
- Tiny210 编译Linux3.0.8
- 列表操作 - C#开发人员
- 模数转换实验中断方式c语言,DSP实验报告--模拟信号的AD+FFT变换
- swift. 扩展类添加属性_Swift快速为类扩展属性
- c++求几个数的最大公约数_最大公约数,最小公倍数 A3
- 应用统计学学什么科目_应用统计学考研科目及总数
- 入门HTML之表格属性bgcolor background bordercolor(light dark)
- [心得]AUP Unix编程艺术知识整理
- 2022CTFSHOW菜狗杯部分MISC(二)
- 微信小程序开发VIP商城项目
- python 循环写文件_循环-读写文件-字符编码
- item_search_img - 按图搜索淘宝商品(拍立淘)
热门文章
- primefaces_PrimeFaces Mobile入门
- jboss 4.3.0_JBoss BPM Suite 6.0.3版本的5个实用技巧
- osgi架构与linux_OSGi:进入微服务架构的门户
- 组织机构代码输入测试用例_测试代码以用于过大的输入
- 用于混合Spock 1.x和JUnit 5测试的Maven项目设置
- JMetro版本5.3已发布
- jedis与redis_Redis与Jedis排序
- Java中的Fork / Join框架的简要概述
- 堆栈溢出回答了我们不知道的Java首要问题
- Spring Cloud –基本设置