1. Python是一门高级的、面向对象的、解释性、脚本语言
(1)关于高级
就是贴近开发人员的语言,让开发人员易懂的语言,Python主要做的就是让程序员重点关注于思考程序逻辑,而不是代码细节而与其相对的就是底层的低级的贴近机器设计的语言。
(2) 关于面向对象
就比如说你在学校餐厅吃饭吃够了,你要吃饭,你有两种方式,一种是点外卖,等着外卖到就行了,让别人去做,自己坐享其成,这个就是面向对象。而另一种就是自己突然想做一顿美食,自己需要去买菜,还要炒菜,还要煮饭,直到最后饭熟了,吃到饭,这样一步一步都需要自己去干才能吃到饭,这个就是面向过程。
(3)关于解释性
由于代码都是英文字符,但是电脑只认识二进制的0和1,因此需要将英文字符转换成二进制的0、1,也就是翻译解释,这样机 器才能识别并执行。而在这里扮演翻译员角色的有两种,一种是编译型工具,就如java中的编译器,在程序执行之前,将程序翻译成机器语言.class文件,以后执行这个程序的时候,就不用再进行翻译了,速度较快。另一种是解释型工具,如Python就 是在运行程序的时候才翻译,执行一句程序翻译一句程序,速度较慢。
(4)关于脚本语言
脚本语言是一种解释性的语言,例如vbscript,javascript,installshield script,ActionScript等等, 脚本语言不需要编译,可以 直接用,由解释器来负责解释,脚本语言一般都是以文本形式存在,类似于一种命令。
2.Python的诞生
Python之父,荷兰的吉多.范罗苏姆,我们亲切的称他为范叔,在1898年的圣诞,实在太无聊了,就灵感一动想着创造一门语言,而后一年就和他的小伙伴们进行了Python语言的研发,最后终于在1991年顺利生产出了一条大蟒蛇Python,这Python 是在ABC语言的大框架下拓展出来的,至于为什么命名为Python是因为我们的范叔特别喜欢的一个剧团就叫Python,在Python诞生后,范叔的座右铭就是人生苦短,我用Python,英文是Life is shot,you need python,这句话也是我的座右铭。
3.Python的版本
现在常用的是Python2和Python3,关于到底使用哪个版本较好,两个都是可以的,没有好坏之分,要看你具体的工作需要哪个版本,如果是自己学习在官网哪个版本都行,看个人喜好,这里要说的是Python2和Python3不互通,你在2中写的代码,只在2中执行,3是没办法执行的,你只有重新写才可以。
从以下几个方面简要的说一下,Python2和Python3之间的一些区别:
(1)print
python2 | python3 | 备注 |
| print() | 输出一个空白行,python3需要调用不带参数的print() |
print 1 | print(1) | 输出一个值,将值传入print()函数 |
print 1, 2 | print(1,2) | 输出使用空格分割的两个值,使用两个参数调用print() |
在Python2中print是一个语句,直接把你想输出的内容放在print后即可,如:print 1;
在Python3中print()是一个函数,需要把你想要输出的内容作为参数传给print()函数,如:print(1)。
(2) <>比较运算符
Python2 | 既支持!=又支持<> |
Python3 | 只支持!= |
(3)UNICODE字符串
Python2 | 有UNICODE字符串和非UNICODE字符串 |
Python3 | 只有UNICODE字符串 |
(4)long长整型
python2 | int型和long型,需要进行区分 |
Python3 | 只有int型 |
Python 2有为非浮点数准备的int和long类型。int类型的最大值不能超过sys.maxint,而且这个最大值是平台相关的。可以通过在数字的末尾附上一个L来定义长整型,显然,它比int类型表示的数字范围更大。
在Python 3里,只有一种整数类型int,大多数情况下,它很像Python 2里的长整型。由于已经不存在两种类型的整数,所以就没有必要使用特殊的语法去区别他们。
4.Python的优缺点
(1)优点
由于是脚本语言本身就比较简单易学,而且它的源码是全部开源的,可以下载,可以修改变成自己想要的程序,它还有丰富的库可以调用,减少了代码量,有规范的代码,还有就是面向对象,可移植,可扩展。
(2)缺点
由于它是解释型语言,所以它需要解释一句,执行一句,速度很慢,而且它起源于国外,从它诞生到现在国内对它的应用极少,不够重视,资料少,国内市场小。
5.Python安装及环境配置
(1)安装
直接到官网https://www.python.org/下载,安装就可以了。
(2)配置
为了让计算机找到要执行的文件,故此要配置环境变量。计算机右键属性-->高级设置-->高级-->环境变量-->Administrator中新建变量(如:PYTHON3_HOME)并在弹框下方填入(如:Python)路径-->在Path下方框中加入(如%PYTHON3_HOME%;)点击确定即可 。
(3)运行
切换盘符,执行脚本文件
6.Python的应用场景
(1)Web应用开发
Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI(是Python应用程序或框架和Web服务器之间的一种接口)标准应用接口来协调Http服务器与基于Python的Web程序之间的通信。一些Web框架,如Django,TurboGears,web2py,Zope等,可以让程序员轻松地开发和管理复杂的Web程序。
(2)操作系统管理、服务器运维的自动化脚本
在很多操作系统里,Python是标准的系统组件。大多数Linux发行版以及NetBSD、OpenBSD和Mac OS X都集成了Python,可以在终端下直接运行Python。有一些Linux发行版的安装器使用Python语言编写,比如Ubuntu的Ubiquity安装器,Red Hat Linux和Fedora的Anaconda安装器。Gentoo Linux使用Python来编写它的Portage包管理系统。Python标准库包含了多个调用操作系统功能的库。通过pywin32这个第三方软件 包,Python能够访问Windows的COM服务及其它Windows API。使用IronPython,Python程序能够直接调用.Net Framework。一般说来,Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。
(3)科学计算
NumPy,SciPy,Matplotlib可以让Python程序员编写科学计算程序。
(4)桌面软件
PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器。
(5)服务器软件(网络软件)
Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted[ˈtwɪstɪd] 支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。
(6)游戏
很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于Python,Lua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。
(7)构思实现,产品早期原型和迭代
YouTube、Google、Yahoo!、NASA都在内部大量地使用Python。
(8)人工智能
Python的库比较强大,简洁高效,是现在人工智能深度学习的首选。