Python伴你行01 | 重新认识Python
引子
之前写过一篇《IT思考03 | Python语言,未来你可能不得不学》,看过这篇文章的读者应该会意识到未来Python的普及程度。既然Python可以普及,说明学习Python真的不难。之所以很多人还没有学习使用Python,应该是还没有认识Python,或者认识的还不多、不够全面。
这篇文章将会带你 重新认识Python。
1、预备知识
在认识Python之前,有必要先准备一下相关的背景知识。其实在学习每个新知识之前,都应该这么做。
因为Python是用来和人工智能设备交互的一种语言和工具,所以需要了解一下生活工作中经常会接触的到智能设备都有哪些?主要的设备罗列如下图:
常见的智能设备.png
这些设备虽然大小外观、应用场景各不相同,但是它们都有几个共性,具体如下:
- CPU(central processing unit,中央处理器),类似我们大脑的负责逻辑、运算、控制机能
- 电源,相当于我们的心脏,为整个机体输送能量
- 存储设备(内存、硬盘、存储卡),这里面有缓存加速用的,也有持久化记忆用的。这部分很像我们人类的记忆功能。
- 与外界的交互系统,比如键盘、鼠标、摄像头、触摸屏、蓝牙、wifi、4g等。类似我们的眼睛、鼻子、耳朵等。
- 运行着由编成语言编写的软件程序,最核心的软件是操作系统。其实我们人类也有这种系统,只不过我们是随着成长和认知过程逐渐构建的。
关于设备的硬件部分,就不多介绍了,因为这不是这篇文章的关注范围,感兴趣的朋友,可以自行充电,如果实在需要,我们也可以另开篇章。
因为Python运行环境是和操作系统有直接的关联,所以针对操作系统,我们简单介绍一下在Python编程中会遇到的部分。首先看一下我们常见的操作系统都有哪些:
- Windows,Win7、Win10
- Linux,Centos、Ubuntu、Redhat等等
- MacOs,苹果电脑、一体机、笔记本
- Android(手机、电视、各种嵌入式设备)、IOS(AppleTV、iphone、ipod、ipad、iwatch)
- Chrome OS系统,Chromebook上面使用
然后我们再看一下这些系统共有的特性,请看下图:
多线程多任务操作系统.png
我们常见的这些操作系统,都是多用户、多任务、多线程的。还有很多我们不常见的操作系统,比如主要应用于工控设备的实时操作系统VxWorks等。感兴趣的朋友可以深入的去了解一下。
2、Python是什么?
应该很多人接触过或者听说过Python,因为Python近几年越来越流行了。想必都知道,Python肯定是和计算机编程有关系。
21、首先,Python是一种计算机编程语言,Python是人类用来和计算机交互和沟通的语言。
作为一种编程语言,它有如下的特点:
-
高级语言
编程语言有0101二进制方式的机器语言,还有直接操作寄存器的汇编语言。而Python是一种高级语言,是由Python解释器程序翻译给计算机来理解的语言。 -
解释型
不需要提前编译,在运行程序的时候有专门的解释器程序对Python代码进行翻译执行。常用的解释器程序有CPython、PyPy。 -
动态数据类型
代码中的变量不用声明类型,具体类型在代码执行的时候根据指向的内存单元中的数据类型决定。 -
面向对象
面向对象是一种高级的编程思维方式,用对象的概念来抽象设计软件。 -
动态语言
在运行时代码可以根据某些条件改变自身结构,比如可以动态的增加或删除函数、对象。
22、Python是操作系统的批处理脚本工具
Python一直是系统运维人员用来管理维护系统的工具,它被集成在很多linux发行版本里面。
23、Python是科研人员的好帮手
可以用来做数据分析、科学计算
24、Python是互联网软件开发人员的利器
可以用来快速的开发各行各业的应用软件,比如web服务、网络爬虫、机器学习等等。
25、Python是儿童学习编程的简单语言
近几年,编程已经逐渐进入儿童教育的课程里面。由于Python的开发运行环境简单、代码可读性强、开发库的生态好,使得Python特别适合用来教学编程,并通过编程,让学生认识到现代社会的人工智能技术。
3、Python的成长历程
Python自吉多·范罗苏姆在1989年设计开发以来,2014年之前,一直发展平稳,主要有两类应用场景,一是院校和教育机构,另一个是作为批处理脚本工具使用。
但是到了2014年,世界上有些国家,主要是欧美,开始把Python的学习列入到了中小学的课程里面。使得Python开始飞速的发展,在科学计算、数据分析、网络爬虫、人工智能、嵌入式开发等领域都开花结果。
2017年,我们国家也把Python加入了到了小学教学的课程里面,校外的一些创客机构也在推广Python编程。又为Python的普及与推广带来了很大的动力。
Python的成长历程
4、Python的具体存在方式
由于Python语言是解释型语言,Python语言写出的代码需要解释器解释执行,所以,首先需要Python解释器程序。Python解释器程序有很多,常用的如下:
-
CPython,用C语言开发实现的解释器程序,这也是Python官方标配的,可以去官方网站https://www.python.org/downloads/下载,windows系统下可以直接下载安装包下载,linux系统缺省有安装的Python2.7版本的。
安装过之后,有个Python可执行文件就会安装到操作系统里面,这个可执行文件就是Python解释器。下面以Windows操作系统下为例,详细介绍一下:
首先去官网下载一个安装程序,现在最先版本为Python3.8.2。
Python安装目录结构
安装完,目录如下:
其中python.exe就是上面说的Python解释器CPython。
-
PyPy
这是用Python语言编写的解释器,官方网站https://www.pypy.org/,windows下载地址,下载后解压到系统,目录下面有个pypy3.exe的就是解释器程序。
Python解释器有了,然后就可以写Python代码了,写的Python代码会保存为以.py为扩展名的文件。比如命名为helloworld.py
总结一下
Python的具体存在方式至少需要两种文件,一个是Python解释器可执行程序,另一种就是以.py为扩展名的文件。
5、Python程序代码的执行过程
结合预备知识里面有关操作系统进程和线程的知识,这里以windows下的python.exe(CPython)解释器为例,执行Python的代码helloworld.py,其过程如下:
- 执行python.exe解释器程序
python.exe helloworld.py
-
在操作系统会创建一个名字为python.exe的进程
-
此进程然后创建一个主线程
-
主线程加载helloworld.py代码
-
然后边翻译代码,边执行代码
-
执行完代码,主线程结束
-
进程结束
可以看下图,更直观一些。
Python代码执行过程6、你学到了吗?
本文主要带领大家重新认识一下Python,应该可以知道:
- Python具体包括哪几部分?体现在计算机中的实体文件主要是什么?
- Python的代码是如何被执行的?具体过程是怎么样的?
- 你知道除了文章里面列出来的,Python还可以是什么呢?
- 你知道Python的解释器是什么语言开发的呢?你知道有几种语言开发的解释器吗?