活动地址:CSDN21天学习挑战赛

1 Python定义

Python 是一种简单易学并且结合了解释性、编译性、互动性和面向对象的脚本语言。Python提供了高级数据结构,它的语法和动态类型以及解释性使它成为广大开发者的首选编程语言。

Python 是解释型语言: 开发过程中没有了编译这个环节。类似于PHP和Perl语言。

Python 是交互式语言: 可以在一个 Python 提示符 >>> 后直接执行代码。

Python 是面向对象语言: Python支持面向对象的风格或代码封装在对象的编程技术。

2 Python发展史

2.1 Python的发展
Python的创始人为Guido van Rossum。1989年,Guido为了打发圣诞节的无趣,决心开发一个新的脚本解释程序,做为ABC 语言的一种继承。

Python 是由其他语言发展而来的,其中主要包括 ABC、Modula-3、C、C++、SmallTalk、Unix shell 等。

自从2004年以后,python的使用率呈线性增长。

关于前十的编程语言排名

Python解释器
Python解释器(Interpreter)是把Python语言翻译成计算机 CPU 能听懂的机器指令。

首先可以在命令提示行输入python --version来查看python的版本:

python --version
Python 3.7.4

然后在命令提示符中输入"Python"命令来启动Python解释器:

python

执行以上命令后,出现如下信息:

Python 3.7.4 (tags/v3.7.4:e09359112e, Jul 8 2019, 20:34:20) [MSC v.1916 64 bit (AMD64)] on win32
Type “help”, “copyright”, “credits” or “license” for more information.

Python解释器易于扩展,可以通过调用C语言或C++来扩展新功能和数据类型。

3 Python的应用

Python的应用主要有以下领域:

  • Linux/UNIX运维:提供API(Application Programming Interface应用程序编程接口),能方便进行系统维护和管理。
  • GUI程序开发(PyQt、Kivy等)
  • Web程序开发(Django、Flask等框架):支持最新的XML技术。
  • 移动App开发(PyQt、Kivy等):Python的PyOpenGL模块封装了“OpenGL应用程序编程接口”,能进行二维和三维图像处理。PyGame模块可用于编写游戏软件。
  • 网络爬虫(为搜索引擎、深度学习等领域提供数据源)
  • 网络编程(基于Socket等协议):提供丰富的模块支持
  • sockets编程,能方便快速地开发分布式应用程序。很多大规模软件开发计划例如Zope,Mnet 及BitTorrent. Google都在广泛地使用它。
  • 图形处理:有PIL、Tkinter等图形库支持,能方便进行图形处理。
  • 文本处理:python提供的re模块能支持正则表达式,还提供SGML,XML分析模块,许多程序员利用python进行XML程序的开发。
  • 数据库编程:可通过遵循Python DB-API(数据库应用程序编程接口)规范的模块与Microsoft SQL Server,Oracle,Sybase,DB2,Mysql、SQLite等数据库通信。python自带有一个Gadfly模块,提供了一个完整的SQL环境。
  • 数据科学:NumPy扩展提供大量与许多标准数学库的接口。机器学习(scikit-learn、TensorFlow框架)、数据统计分析和可视化(Matplotlib、seaborn框架)。

python应用举例:

Google - 谷歌在很多项目中用python作为网络应用的后端,如Google Groups、Gmail、Google Maps等
NASA - 美国宇航局,从1994年起把python作为主要开发语言
豆瓣网 - 图书、唱片、电影等文化产品的资料数据库网站
Torchlight --Python编写的大型3D游戏,原Blizzard公司人员制作发行,开源
Blender - 以C与Python开发的开源3D绘图软件 在科学研究中也得到广泛的应用

4 Python的特点

简单易读易学:Python是非常简单的语言,并且具有清晰的风格和强制缩进,Python具有简单的语法,极其容易入门。
免费其开源:Python是自由/开放源码的软件。可以自行对其源代码进行修改使用。
可移植性:Python可以被移植在许多平台上,常用的平台包括Linux、Windows、VxWorks、PlayStation、Windows CE、PocketPC等。
解释性: Python解释器把源代码转换成字节码,然后再把它翻译成计算机使用的机器语言并运行,即Python代码在运行之前不需要编译。
面向对象:Python支持面向对象的编程。程序通过组合(composition)与继承(inheritance)的方式定义类(class)。
可扩展性:如果需要一段关键代码运行得更快或者希望某些算法不公开,那么可以将部分程序用C或C++进行编写,然后在Python程序中调用。
可嵌入性:可以把Python嵌入C/C++程序,从而向程序用户提供脚本功能。
交互式命令行:python可以单步直译运行,可以在一个 Python 提示符 >>> 后直接执行代码。
丰富的标准库:Python标准库包括字符串处理(字典、数组切片、正则表达式re)、文档生成、多线程、串行化、数据库、HTML/XML解析(BeautifulSoup,Expat)、单元测试(PyUnit)、代码版本控制(PySVN)、WAV文件、网络控制(urllib2)、密码系统、GUI(图形用户界面,PyQt)、图形模块(Tkinter、PyTCL、WxPython)等。除了标准库以外,还有许多其他高质量的库,如wxPython、Twisted和Python图像库等等。
规范性:采用强制缩进的方式使得代码具有较好可读性,减少了视觉上的错乱。
胶水语言:python经常用作将不同语言编写的程序“粘”在一起的胶水语言。Boost.Python使得Python和C++的类库可互相调用(.pyc);Jpython是用Java实现的Python,可以同时使用两者的类库;Ironpython是Python在.NET平台上的版本。

5 Python优点

易于学习,非常适合初学者,也特别适合专家使用
可伸缩程度高,适于大型项目或小型的一次性程序(称为脚本)
可移植,跨平台
可嵌入(使 ArcGIS 可脚本化)
稳定成熟
用户社区规模大

python简介以及优点相关推荐

  1. 【Python】Python简介和Python解释器

    计算机语言的种类非常的多,总的来说可以分成机器语言,汇编语言,高级语言三大类. 机器语言(二进制)→汇编语言→(前面两种语言是与硬件进行交互) →高级语言(面向过程语言(C语言)→面向对象语言) Py ...

  2. Python笔记(1) Python简介

    Python笔记(1) Python简介 1. Python的历史 2. Python的应用 3. Python的特点 4. Python的下载和安装 5. 第一个Python程序 6. Python ...

  3. 【python】Python简介及优缺点

    一.python简介 python的创始人为吉多·范罗苏姆(Guido van Rossum).1989年的圣诞节期间,Guido开始写能够解释Python语言语法的解释器.Python这个名字,来自 ...

  4. python 简介+安装(搬运廖雪峰网站)

    Python简介 Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言. 现在,全世界差不多有600多种编程 ...

  5. [转载] Python简介、linux上Python及其IDE的安装和详细配置

    参考链接: Python id() 一.什么是Python? Python是一种计算机程序设计语言.是一种动态的.面向对象的脚本语言,最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语 ...

  6. python基础(1)---python简介

    一.python简介 Python是著名的"龟叔"Guido van Rossum在1989年圣诞节期间,为了打发无聊的圣诞节而编写的一个编程语言.目前Python已经成为实际上除 ...

  7. Python自动化开发【1】:Python简介和入门

    Python自动化开发之路 [第1篇]:Python简介和入门 编程与编程语言 一 编程与编程语言python是一门编程语言,作为学习python的开始,需要事先搞明白:编程的目的是什么?什么是编程语 ...

  8. Python 简介及开发环境搭建

    Python简介 Python是一门动态解释性的强类型定义的计算机程序设计语言,是一种完全面向对象的语言,由荷兰人"龟叔"-Guido van Rossum于1989年开发,于19 ...

  9. 计算机语言python-一、计算机语言与python简介

    (3)高级语言 高级语言是大多数编程者的选择.和汇编语言相比,它不但将许多相关的机器指令合成为单条指令,并且去掉了与具体操作有关但与完成工作无关的细节,例如使用堆栈.寄存器等,这样就大大简化了程序中的 ...

最新文章

  1. Win10上rabbitmq 安装
  2. Windows 7 自动更新失败导致无法进系统解决方案
  3. R语言smoothHR包_SmoothHR產品官方網站 全新體驗、正式上線 !
  4. C++高手总结的编程规律
  5. 一些与HTML相关名词的简介
  6. 广东计算机学会 信息学省初赛,报名丨2019第36届全国信息学奥林匹克竞赛于广州二中举办!...
  7. 2019-05-22 防范ASP木马;如何防止注入攻击;
  8. 以FORWARD为例,分步骤演示Filter对转发请求的拦截效果
  9. 92.与上游服务建立连接
  10. 查找窗口隐藏了怎么办_百度地图这些不为人知的隐藏功能
  11. 超表面透镜相位matlab,基于超透镜的小F数大景深镜头的设计方法及应用与流程...
  12. 计算机键盘上删除,电脑哪个是删除键
  13. java 以2为底的对数_如何计算Java中以整数为底的对数2?
  14. 传统汽车人,在未来还有机会吗?—— 一名汽车人的职业转型经历
  15. COOC9.94一款用于文献计量和知识图谱绘制的软件
  16. 复旦大学的计算机专业分数线,2018复旦大学分数线 各专业分数线是多少
  17. 由DatePicket和TimePicker扩展延伸其他控件
  18. 「企企通」完成Pre-D轮融资,加速采购供应链工业软件和 SaaS 网络生态构建
  19. linux下微信/qq的aud、silk音频文件格式与mp3格式互转,获取音频时长的方法,附问题分析和java代码。
  20. oracle rollup 合计,oracle中关于分组合计函数rollup使用

热门文章

  1. GD32E230开发环境搭建 keil无法识别芯片 jlink无法烧录
  2. Unity2D学习———角色移动两种方式+小怪追随+Unity演示+C#代码
  3. 【考研】915自控攻略
  4. 四位行波进位加法器_行波进位加/减法器的硬件开销和性能分析
  5. 非全局安装npm,在项目目录下执行命令
  6. npm 下载的几种方式
  7. File之mkdir和mkdirs
  8. leapftp 注册码大全
  9. 基于SSM的车辆租赁管理系统
  10. cmd的如何打开、运行?(1)