《Python编程的术与道:Python语言入门》视频课程
《Python编程的术与道:Python语言入门》视频课程链接:https://edu.csdn.net/course/detail/27845
Python的诞生
Python的创始人为吉多·范·罗苏姆(Guido van Rossum)。1989年的圣诞节期间,吉多·范·罗苏姆(中文名字:龟叔)为了在阿姆斯特丹打发时间,决心开发一个新的脚本解释程序,作为ABC语言的一种继承。
Python来自Guido所挚爱的电视剧Monty Python’s Flying Circus (BBC1960-1970年代播放的室内情景幽默剧,以当时的英国生活为素材)。他希望这个新的叫做Python的语言,能实现他的理念(一种C和shell之间、功能全面、易学易用、可拓展的语言)。
Python 版本列表
版本 | 发布时间 |
---|---|
Python 1.0 | January 1994 |
Python 1.5 | December 31, 1997 |
Python 1.6 | September 5, 2000 |
Python 2.0 | October 16, 2000 |
Python 2.1 | April 17, 2001 |
Python 2.2 | December 21, 2001 |
Python 2.3 | July 29, 2003 |
Python 2.4 | November 30, 2004 |
Python 2.5 | September 19, 2006 |
Python 2.6 | October 1, 2008 |
Python 2.7 | July 3, 2010 |
Python 3.0 | December 3, 2008 |
Python 3.1 | June 27, 2009 |
Python 3.2 | February 20, 2011 |
Python 3.3 | September 29, 2012 |
Python 3.4 | March 16, 2014 |
Python 3.5 | September 13, 2015 |
Python 3.6 | December 23, 2016 |
Python 3.7 | June 27, 2018 |
Python 3.8 | Oct.14, 2019 |
Python 3.9 | Oct.5 2020 |
Python 3.10 | Oct.4 2021 |
Python 3.0于2008年发布,是该语言的主要修订版,并不完全向后兼容,并且许多Python 2代码不会在未经修改的Python 3上运行。
Python 2语言(即python 2.7.x)已于2020年1月1日正式停止更新支持,此后将不会为其发布安全补丁和其他改进功能。
语言特点:
Python是一门动态解释型的强类型定义语言。
解释型语言和编译型语言
计算机是不能够识别高级语言的,所以当我们运行一个高级语言程序的时候,就需要一个“翻译机”来从事把高级语言转变成计算机能读懂的机器语言的过程。这个过程分成两类,第一种是编译,第二种是解释。
编译型语言在程序执行之前,先会通过编译器对程序执行一个编译的过程,把程序转变成机器语言。运行时就不需要翻译,而直接执行就可以了。最典型的例子就是C语言。
解释型语言就没有这个编译的过程,而是在程序运行的时候,通过解释器对程序逐行作出解释,然后直接运行,最典型的例子是Basic。
注意:当我们运行Python文件程序的时候,Python解释器将源码转换为字节码,然后再由解释器来执行这些字节码。.pyc文件是由.py文件经过编译后生成的字节码文件,其加载速度相对于之前的.py文件有所提高。
强类型定义语言
强制数据类型定义的语言。一旦一个变量被指定了某个数据类型,如果不经过强制转换,那么它就永远是这个数据类型了。举个例子,如果定义了一个整型变量a,那么程序不能将a当做字符串类型处理。强类型定义语言是类型安全的语言。
Python不倾向于对变量的类型做隐式转换,因此是一门强类型语言。其次,Python可以在运行时改变变量的类型,因此python是一门动态类型语言。
弱类型定义语言
数据类型可以被忽略的语言。它与强类型定义语言相反。一个变量可以赋不同数据类型的值。
Python的种类
-
Cpython
Python的官方版本,使用C语言实现,使用最为广泛,CPython实现会将源文件(py文件)转换成字节码文件(pyc文件),然后运行在Python虚拟机上。
-
Jyhton
Python的Java实现,Jython会将Python代码动态编译成Java字节码,然后在JVM上运行。
-
IronPython
Python的C#实现,IronPython将Python代码编译成C#字节码,然后在CLR上运行。(与Jython类似)
-
PyPy
Python实现的Python,将Python的字节码字节码再编译成机器码。