1 Python简介
Python是一种计算机程序设计语言。是一种面向对象的动态类型语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越来越多被用于独立的、大型项目的开发。
1.1 Python的发展史
1989年圣诞节,荷兰人吉多·范罗苏姆 (Guido van Rossum),为打发节日无趣,开发新脚本解释程序,作为ABC语言的一种继承,Python(大蟒蛇)取自英国20世纪70年代首播的电视喜剧《蒙提.派森的飞行马戏团》(Monty Python‘s Flying Circus)。
1991年,公开发行Python第一个版本。
2000年10月16日,发布Python 2,稳定版本是Python 2.7,自从2004年后,Python的使用率呈线性增长。
2008年12月3日,公开发行Python 3.0,这是一次重大的升级,为了避免引入历史包袱,不完全兼容Python 2,导致很长时间以来Python 2的用户不愿意升级到Python 3.0这种割裂一度影响了Python的应用。
2009年6月,Python 发布了 3.1 版本。
2011年1月,Python被TIOBE编程语言排行榜评为2010年度语言。Python 己经迅速上升到第 4 位,仅次于 Java、C、C++。Java 占据了世界上绝大部分电商、金融、通信等服务端应用开发,而 C、C++ 占据了世界上绝大部分贴近操作系统的硬件编程,这三门语言的地位太难动摇了。
2011年2月,Python 发布了 3.2 版本。
2012年9月,Python 发布了 3.3 版本。
2014年3月,Python 发布了 3.4 版本。
2015年9月,Python 发布了 3.5 版本。
2016年12月,Python 发布了 3.6 版本。
2018年3月,该语言作者在邮件列表上宣布Python 2.7将于2020年1月1日终止支持。用户若想继续得到与Python 2.7有关的支持,需要付费给商业供应商。
目前Python已被广泛应用于大数据、人工智能(AI)、教授程序设计课程、计算机视觉库OpenCV、三维可视化库VTK、医学图像处理库ITK、NumPy、SciPy、matplotlib、工程技术、科研人员处理实验数据、制作图表、开发科学计算应用程序等
1.2 编程语言的区别
(1)解释型语言: Python与PHP
优点:可移植性较好,只要有解释环境,可在不同操作系统上运行;
缺点:运行需要解释环境,运行起来比编译的要慢,占用资源多,代码效率低,代码修改后就可运行,维护方便快捷;
(2)编译型语言:C、C++、Java
优点:运行速度快、代码效率高、编译后的程序不可修改、保密性较好;
缺点:代码需要经过编译方可运行、可移植性差、只能在兼容的操作系统上运行;
1.3 Python语言特点
(1)易于学习:Python有相对较少的关键字(33个),结构简单,往往“只用一种最好的方法来做事”,摒弃了C、C++的指针等复杂的算法(如:用Java需要100行代码,但用Python可能只需要20行代码)
(2)面向对象:函数、模块、数字、字符串都是对象(C、C++是面向过程)。并且完全支持继承、重载、派生、多继承,有益于增强源代码的复用性。Python支持重载运算符和动态类型。相对于Lisp这种传统的函数式编程语言,Python对函数式设计只提供了有限的支持。有两个标准库(functools, itertools)提供了Haskell和Standard ML中久经考验的函数式程序设计工具。
(3)可扩展性:
①语法清晰:它甚至不是一种格式自由的语言(如:它要求 if 语句的下一行必须向右缩进,否则不能通过编译)
②内置模块:Python 具有脚本语言中最丰富和强大的类库(这些类库被形象地称为“batteries included ,内置电池”),这些类库覆盖了文件 I/O、GUI、网络编程、数据库访问、文本操作等绝大部分应用场景。
③程序调用:如果需要运行一段很快的关键代码 或者是想要编写一些不愿开放的算法 你可以用C或者C++完成那部分程序 然后从程序中调用。
(4)跨平台:Python 作为一门解释型的语言,它天生具有跨平台的特征,只要为平台提供了相应的 Python 解释器,Python 就可以在该平台上运行。(解释型语言几乎天然是跨平台的。在Windows、Unix以及Linux上都有很好的兼容性)
(5)易于维护:编译与运行整合在一起,源代码可修改后直接运行
(6)数据库:Python提供所有主要的商业数据库的接口
(7)GUI编程:图形用户界面(Graphical User Interface,简称 GUI,又称图形用户接口) 是指采用图形方式显示的计算机操作用户界面。与早期计算机使用的命令行界面相比,图形界面对于用户来说在视觉上更易于接受。支持非常丰富的图形开发界面(pyqt,tkinter,pygame)
(8)轻松移植:只要有解释环境,可在不同操作系统上运行(Linux、Windows、Mac)
(9)交互式:操作人员和系统之间存在交互作用的信息处理方式。操作人员通过终端设备(见输入输出系统)输入信息和操作命令,系统接到后立即处理,并通过终端设备显示处理结果。print(“hello python”)
(10)开源许可:Python源代码遵循GPL(GNU General Public License)协议(通用性公开许可证)
(11)Python缺点:
①速度慢:Python程序比Java、C、C++等程序的运行效率都慢(计算机硬件速度越来越快,软件工程往往更关注开发过程效率,而不是运行效率,另外关键模块可用C/C++写代码,Python调用即可)
②源代码加密难:不像编译型语言的源程序会被编译成目标程序,Python 直接运行源程序,因此对源代码加密比较困难。(现在软件行业的大势本来就是开源,就像 Java 程序同样很容易反编译,但丝毫不会影响它的流行)
1.4 Python安装环境
环境变量(environment variables)一般是指在操作系统中用来指定操作系统运行环境的一些参数,如:临时文件夹位置和系统文件夹位置等。
环境变量是在操作系统中一个具有特定名字的对象,它包含了一个或者多个应用程序所将使用到的信息。例如Windows和DOS操作系统中的path环境变量,当要求系统运行一个程序而没有告诉它程序所在的完整路径时,系统除了在当前目录下面寻找此程序外,还应到path中指定的路径去找。用户通过设置环境变量,来更好的运行进程。
(1)官网:https://www.python.org
(2)Python两个版本:Python3.6与Python2.7
①异同:只有0.3%是不相同的,print( )与print ””
②注意:2.7与3.6语法上有一点点区别,可用工具将2.7升级为3.6
(3)环境变量配置:Python在安装时要将Python的配置加入到环境变量里,这样在终端里打开默认就为3.6如果想使用默认为 2.7 那么将Python2.7的路径加到系统的环境变量里 把系统环境变量最后加上一个分号 然后在把路径赋值进去。
(4)Python的编辑器:
①PyCharm:是一种Python IDE,带有一整套可以帮助用户在使用Python语言开发时提高其效率的工具,比如调试、语法高亮、Project管理、代码跳转、智能提示、自动完成、单元测试、版本控制。此外,该IDE提供了一些高级功能,以用于支持Django框架下的专业Web开发。
②Vim:Vim是一个类似于Vi的著名的功能强大、高度可定制的文本编辑器,在Vi的基础上改进和增加了很多特性。 VIM是自由软件。
Vim普遍被推崇为类Vi编辑器中最好的一个,事实上真正的劲敌来自Emacs的不同变体。1999 年Emacs被选为Linuxworld文本编辑分类的优胜者,Vim屈居第二。但在2000年2月Vim赢得了Slashdot Beanie的最佳开放源代码文本编辑器大奖,又将Emacs推至二线, 总的来看, Vim和Emacs在文本编辑方面都是非常优秀的。
③Eclipse with PyDev:
④Sublime Text:是一个代码编辑器(Sublime Text 2是收费软件,但可以无限期试用),也是HTML和散文先进的文本编辑器。Sublime Text是由程序员Jon Skinner于2008年1月份所开发出来,它最初被设计为一个具有丰富扩展功能的Vim。
Sublime Text具有漂亮的用户界面和强大的功能,例如代码缩略图,Python的插件,代码段等。还可自定义键绑定,菜单和工具栏。Sublime Text 的主要功能包括:拼写检查,书签,完整的 Python API , Goto 功能,即时项目切换,多选择,多窗口等等。Sublime Text 是一个跨平台的编辑器,同时支持Windows、Linux、Mac OS X等操作系统。
(5)软件安装(Python3.6为例)
①Python3.6安装(解释器)https://www.python.org:
- 勾选Add Python 3.6 to PAHT将解释器的路径添加到环境变量里,以此可以实现在终端输入命令并执行出结果;
- 点击Install Now开始安装直至安装成功
②PyCharm安装(编辑器)http://www.jetbrains.com/pycharm/
- 点击DOWNLOAD
- 选择对应的操作系统(Windows、macOS、Linux)
- 选择对应版本(Professional专业版、Community社区版),这里选专业版(专业版自带很多模块,方便使用)
- 运行安装包,安装目录建议装在其他盘(C盘会卡)
- 勾选32-bit launcher和.py,后直接安装(默认即可)
- 选择不导入之前的配置I do not have a previous version of PyCharm or I do not want to import my settings
- 进入产品激活界面,选择License server,输入激活地址http://im.js.cn:8888或者http://idea.java.sx/或者http://xidea.online点击Activate 就激活了,编辑器就可以正常使用了
1.5 Python的应用方向
(1)Linux运维
Linux运维必须而且一定要掌握Python语言,Python是一门非常NB的编程语言,它可以满足Linux工程师的工作需求提升效率,从而提升自己能力,运维工程师需要自己独立开发一个完整的自动化系统时,这个时候才是真正价值的体现。
(2)Python Web网站工程师
Web一直都是不可忽视的存在,我们离不开网络,离不开Web
(3)Python自动化测试
Python语言对测试的帮助是非常大的,自动化测试中Python语言的用途很广,可以说Python太强大,掌握和熟悉自动化的流程、方法和我们使用的各个模块
(4)数据分析
目前大数据已经来临,数据可以说明一切问题的原因,现在很多做数据分析的不是原来那么简单,Python语言成为了做数据分析的首选,它同时可以给工作带来很大的效率提升
(5)人工智能
谷歌制作出了机器人,战胜了围棋大师,这个就是目前刚出头的人工智能,当然我们的人工智能时代还没有到来,如果这天来了,生活和世界将会发生翻天覆地的变化,而且现在发展这么快,人工智能的时代不会太远。
原文地址:https://www.cnblogs.com/liulian999/p/12045565.html