|
根据最新的TIOBE指数,Python目前在最受欢迎和实用的编程语言中名列前五。它是一个多用途、高级、面向对象、交互式、解释和极其友好的编程语言。
交互意味着您可以在Python控制台中直接键入代码,然后与解释器交互执行。它提出了一种简单的编码风格,使它成为每个计划在编程中开始他或她的职业生涯的人的首选语言。
※ Python-History (历史)
Guido Van Rossum是一名荷兰程序员。他在上世纪80年代末把Python作为爱好编程的项目写了出来。从那时起,它已经成长为计算机界最优美的语言之一。
1989年12月的圣诞节, Van Rossum 利用空闲时间开始了这个项目。他最初想要创建一个解释器,这是ABC编程语言的后代,他是一个有贡献的开发人员。我们都知道,正是Python 逐渐转变成一种成熟的编程语言。
※ Python-Features (特点)
※ Python-Domains (领域)
- Web应用程序开发
- 科学数学计算
- GUI编程
- 软件原型开发
- 运维自动化
- 大数据分析
- 深度学习
- 专业学习
Python确实是用于教学和培训的合适的编程语言。它可以成为初学者进入编程领域的垫脚石,甚至可以帮助他们学习其他语言。
※ Python-Install(安装)
- On Mac OS X
- On Linux
- On Windows
※ 解释器几种版本
当我们装完Python后,其默认解释就是CPython,也是官方默认解释器。CPython是C语言写的,当执行代码时会将代码转化成字节码(ByteCode)。
基于CPython之上的一个交互式解释器,相当于默认解释器的一个增强版,最显著的功能就是自动补全,挺好用的。
PyPy本身是由Python编写的,使用了JIT编译器(即时编译器)技术,当执行代码时JIT编译器将代码翻译成机器码。性能相比CPython要好。JAVA也采用了JIT编译器。
Jython是由JAVA编写的一个解释器,可以把JAVA模块加载到Python的模块中使用,也可以把Python代码打包成JAR包,意味着允许用Python写JAVA程序了。当执行代码时会将代码转化成JAVA字节码,然后使用JRE执行。
在.NET平台上工作的Python解释器,可以直接把Python代码编译成.Net的字节码。
※ 文本编辑器
在Python的交互式命令行写程序,好处是一下就能得到结果,坏处是没法保存,下次还想运行的时候,还得再敲一遍。
所以,实际开发的时候,我们总是使用一个文本编辑器来写代码,写完了,保存为一个文件,这样,程序就可以反复运行了。
一般常用两种文本编辑器:Sublime Text 和 Notepad++。
※ 分不清解释器和编辑器
编辑器就相当于记事本, 你可以用记事本写文章, 但是你不能用记事本去发布文章, 然后你可以通过博客来发布自己的文章, 这里的博客就相当于解释器。
总结就是:编辑器就是用来写代码的, 解释器是为了让你写的 Python 代码是可以执行的。( Python 是解释性语言,不需要编译,代码运行过程中,逐行执行.比如 Java 语言, 是编译型的, 在生成目标文件之前需要编译,链接这两个过程)!
想一下,你写带代码如何上电脑知道你写的啥,这就绕回了第一节的内容, 计算机只能识别机器指令,就是 000011100011 这种二进制数据,编译器, 解释器最终目的都是为了把我们写的代码翻译成机器指令,这样计算机才能明白我们的代码是什么意思。
※ Python代码执行过程
大致流程:源代码编译成字节码(.pyc文件)--> Python虚拟机 --> 执行编译好的字节码 --> Python虚拟机将字节码翻译成对应的机器指令(机器码)
运行Python程序时,先编译成字节码并保存到内存中,当程序运行结束后,Python解释器将内存中字节码对象写到.pyc文件中。
第二次再运行此程序时,先回从硬盘中寻找.pyc文件,如果找到,则直接载入,否则就重复上面的过程。
这样好处是,不重复编译,提供执行效率。
1) 字节码
字节码是一种包含执行程序、由一序列op代码/数据对组成的二进制文件。字节码是一种中间码,比机器码更抽象。
2) 机器码
机器码是一种指令集,让CPU可直接解读的数据。也称为原生码。
|
|