技术分享| python的简单介绍

2018-07-20 15:53:53

西安中软卓越的老师在本文中将简单介绍Python的发展历史和语言特点、语法常识。熟知这些语法常识、语法特点,将有助于提高开发效率。

Python是一种面向对象的解释型计算机程序设计语言,由荷兰人Guidovan Rossum1989年发明,第一个公开发行版发行于1991年。

Python是纯粹的自由软件,源代码和解释器CPython遵循GPLGNUGeneralPublic License)协议。Python语法简洁清晰,特色之一是强制用空白符(whitespace)作为语句缩进。

Python具有丰富和强大的库。它常被昵称为胶水语言,能够把用其他语言制作的各种模块(尤其是C/C++)很轻松地联结在一起。常见的一种应用情形是,使用Python快速生成程序的原型(有时甚至是程序的最终界面),然后对其中有特别要求的部分,用更合适的语言改写,比如3D游戏中的图形渲染模块,性能要求特别高,就可以用C/C++重写,而后封装为Python可以调用的扩展类库。需要注意的是在您使用扩展类库时可能需要考虑平台问题,某些可能不提供跨平台的实现。

技术分享| python的简单介绍1.jpg

一、Python特点:

1Python使用C语言开发,但是Python不再有C语言中的指针等复杂的数据类型。

2Python具有很强的面向对象特性,而且简化了面向对象的实现。它消除了保护类型、抽象类、接口等面向对象的元素。

3Python代码块使用空格或制表符缩进的方式分隔代码。

4Python仅有31个保留字,而且没有分号、beginend等标记。

5Python是强类型语言,变量创建后会对应一种数据类型,出现在统一表达式中的不同类型的变量需要做类型转换。

二、Python搭建开发环境

1、可以到www.python.org下载安装包,然后通过configuremakemakeinstall进行安装。

2、也可以到www.activestate.com去下载ActivePython组件包。(ActivePython是对Python核心和常用模块的二进制包装,它是ActiveState公司发布的Python开发环境。ActivePython使得Python的安装更加容易,并且可以应用在各种操作系统上。ActivePython包含了一些常用的Python扩展,以及Windows环境的编程接口)。对ActivePython来说,如果你是windows用户,下载msi包安装即可;如果你是Unix用户,下载tar.gz包直接解压即可。

3PythonIDE,包括PythonWinEclipse+PyDev插件、KomodoEditPlus

三、Python的应用

系统编程:提供APIApplication Programming Interface应用程序编程接口),能方便进行系统维护和管理,Linux下标志性语言之一,是很多系统管理员理想的编程工具。

图形处理:有PILTkinter等图形库支持,能方便进行图形处理。

数学处理:NumPy扩展提供大量与许多标准数学库的接口。

文本处理:python提供的re模块能支持正则表达式,还提供SGMLXML分析模块,许多程序员利用python进行XML程序的开发。

数据库编程:程序员可通过遵循PythonDB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL ServerOracleSybaseDB2MySQLSQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。

网络编程:提供丰富的模块支持sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如ZopeMnetBitTorrent.Google都在广泛地使用它。

Web编程:应用的开发语言,支持最新的XML技术。

多媒体应用:PythonPyOpenGL模块封装了"OpenGL应用程序编程接口",能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。

pymo引擎:PYMO全称为pythonmemoriesoff,是一款运行于SymbianS60V3Symbian3S60V5Symbian3Android系统上的AVG游戏引擎。因其基于python2.0平台开发,并且适用于创建秋之回忆(memoriesoff)风格的AVG游戏,故命名为PYMO

黑客编程:python有一个hack的库,内置了你熟悉的或不熟悉的函数,但是缺少成就感。

Python写简单爬虫

通过上面这三句就可以将URL的源码存在content变量中,其类型为字符型。

接下来是要从这堆HTML源码中提取我们需要的内容。用Chrome查看一下对应的内容的代码(也可以用FirefoxFirebug)。

可以看到url的信息存储在span标签中,要获取其中的信息可以用正则式。

技术分享| python的简单介绍2.jpg

四、Python应用场景

1Web应用开发

Python经常被用于Web开发。比如,通过mod_wsgi模块,Apache可以运行用Python编写的Web程序。Python定义了WSGI标准应用接口来协调Http服务器与基于PythonWeb程序之间的通信。一些Web框架,如DjangoTurboGearsweb2pyZope等,可以让程序员轻松地开发和管理复杂的Web程序。

1、操作系统管理、服务器运维的自动化脚本

在很多操作系统里,Python是标准的系统组件。大多数Linux发行版以及NetBSDOpenBSDMacOSX都集成了Python,可以在终端下直接运行Python。有一些Linux发行版的安装器使用Python语言编写,比如UbuntuUbiquity安装器,RedHatLinuxFedoraAnaconda安装器。GentooLinux使用Python来编写它的Portage包管理系统。Python标准库包含了多个调用操作系统功能的库。通过pywin32这个第三方软件包,Python能够访问WindowsCOM服务及其它WindowsAPI。使用IronPythonPython程序能够直接调用.NetFramework。一般说来,Python编写的系统管理脚本在可读性、性能、代码重用度、扩展性几方面都优于普通的shell脚本。

3、科学计算

NumPySciPyMatplotlib可以让Python程序员编写科学计算程序。

4、桌面软件

PyQtPySidewxPythonPyGTKPython快速开发桌面应用程序的利器。

5、服务器软件(网络软件)

Python对于各种网络协议的支持很完善,因此经常被用于编写服务器软件、网络爬虫。第三方库Twisted支持异步网络编程和多数标准的网络协议(包含客户端和服务器),并且提供了多种工具,被广泛用于编写高性能的服务器软件。

6、游戏

很多游戏使用C++编写图形显示等高性能模块,而使用Python或者Lua编写游戏的逻辑、服务器。相较于PythonLua的功能更简单、体积更小;而Python则支持更多的特性和数据类型。

7、构思实现,产品早期原型和迭代

YouTubeGoogleYahoo!、NASA都在内部大量地使用Python

五、Python的应用方向

1.常规软件开发

Python支持函数式编程和OOP面向对象编程,能够承担任何种类软件的开发工作,因此常规的软件开发、脚本编写、网络编程等都属于标配能力。

2.科学计算

随着NumPySciPyMatplotlibEnthoughtlibrarys等众多程序库的开发,Python越来越适合于做科学计算、绘制高质量的2D3D图像。和科学计算领域最流行的商业软件Matlab相比,Python是一门通用的程序设计语言,比Matlab所采用的脚本语言的应用范围更广泛,有更多的程序库的支持。虽然Matlab中的许多高级功能和toolbox目前还是无法替代的,不过在日常的科研开发之中仍然有很多的工作是可以用Python代劳的。

3.自动化运维

这几乎是Python应用的自留地,作为运维工程师首选的编程语言,Python在自动化运维方面已经深入人心,比如SaltstackAnsible都是大名鼎鼎的自动化平台。

4.云计算

开源云计算解决方案OpenStack就是基于Python开发的,搞云计算的同学都懂的。

5.WEB开发

基于PythonWeb开发框架不要太多,比如耳熟能详的Django,还有TornadoFlask。其中的Python+Django架构,应用范围非常广,开发速度非常快,学习门槛也很低,能够帮助你快速的搭建起可用的WEB服务。

6.网络爬虫

也称网络蜘蛛,是大数据行业获取数据的核心工具。没有网络爬虫自动地、不分昼夜地、高智能地在互联网上爬取免费的数据,那些大数据相关的公司恐怕要少四分之三。能够编写网络爬虫的编程语言有不少,但Python绝对是其中的主流之一,其Scripy爬虫框架应用非常广泛。

7.数据分析

在大量数据的基础上,结合科学计算、机器学习等技术,对数据进行清洗、去重、规格化和针对性的分析是大数据行业的基石。Python是数据分析的主流语言之一。

8.人工智能

Python在人工智能大范畴领域内的机器学习、神经网络、深度学习等方面都是主流的编程语言,得到广泛的支持和应用。

本文中简单介绍了Python特点、搭建开发环境、应用、应用场景、应用方向等python常识知识。熟知这些语法常识、语法特点,将有助于提高开发效率。

作为一名开发人员,技术是立身的根本,是拴马桩的尊严;对于一个做教育机构,口碑如水是生命之源,是长盛不衰的根本。13年历经风雨依然昂首前行,未来的西安中软卓越同样会恪守初心,以技术立身,培养IT精英,捍卫教育本质。

本文由中软卓越(西安)汇集整理,转载请注明作者及出处。

如需学习java、UI设计、软件测试、Python、大数据、嵌入式、Linxu云计算,请点击咨询,加入我们让你的未来不再迷茫。

关于我们

【中软卓越】-中软国际旗下高端教育品牌,是中软国际有限公司投资的大型人才服务机构,是中软国际人才战略的核心组成部分之一,承担集团发展过程中人才储备和培养的任务;专注IT培训37年,国内高端IT培训品牌,教育部指定官方IT人才培训机构。专注java培训、UI设计培训、软件测试培训、Python培训、大数据培训、嵌入式培训、Linxu云计算培训等培训课程。217家合作院校,880家合作企业,真实项目实战,素质拓展,职业规划。零首付,100%保障就业,先就业,后付款。

最牛逼的毕业学员入职名企享受高薪就业。880家合作企业,年培育学员人数逾6000人,毕业学员就职于中软国际、百度、腾讯、阿里巴巴、IBM、华为科技、中兴通讯、软通动力等知名企业。

还有什么疑问?我们全面为你解答!为您提供一对一专人服务,请点击下方咨询

  • 卓越资讯
  • 猜你想看
  • 常见问题

    Java是一门面向对象编程语言,不仅吸收了C++语言的各种优点,还摒弃了C++里难以理解的多继承、指针等概念,因此Java语言具有功能强大和简单易用两个特征。[详细课程]

    软件开发是根据用户要求建造出软件系统或者系统中的软件部分的过程;软件开发是一项包括需求捕捉、需求分析、设计、实现和测试的系统工程。[详细课程]

    软件测试是在规定的条件下对程序进行操作,以发现程序错误,衡量软件质量,并对其是否能满足设计要求进行评估的过程。[详细课程]

    Python是一种面向对象的解释型计算机程序设计语言,语法简洁清晰,特色之一是强制用空白符作为语句缩进,它常被昵称为胶水语言,能够把用其他语言制作的各种模块。[详细课程]

    UI设计分为实体UI和虚拟UI,互联网说的UI设计是虚拟UI,一般是指对软件的人机交互、操作逻辑、界面美观的整体设计。[详细课程]

    大数据,又称巨量资料,指的是所涉及的数据资料量规模巨大到无法通过人脑甚至主流软件工具,在合理时间内达到撷取、管理、处理、并整理成为帮助企业经营决策更积极目的的资讯。[详细课程]

    云计算是一种按使用量付费的模式,这种模式提供可用的、便捷的、按需的网络访问, 进入可配置的计算资源共享池(资源包括网络,服务器,存储,应用软件,服务),这些资源能够被快速提供,只需投入很少的管理工作,或与服务供应商进行很少的交互。[详细课程]

    西安市长安北路8号高速大厦三楼

    电话:029-61876930