Python发展历史Python语言的由来及发展历程是怎样的

一、Python发展史

Python语言因其简洁明了的风格、大量广泛适用的类库和可以使用的python开源框架而受到很多IT行业人士的喜爱。Python的起源和发展是什么?让我们简要地看一下它。

追溯 Python 语言的起源,1990 年代初期由阿姆斯特丹的 Guido van Rossum 开发了一种新的脚本解释器。我想知道 Guido 是否认为 Python 有朝一日会成为最流行的编程语言之一?

有些人喜欢使用胶水语言来描述 Python,因为它可以很容易地组合用许多其他语言编写的模块。至于过程,这里就不多说了。要知道,国内外很多高校也把python语言作为必修课来学习,而国内使用python语言工作的单位也越来越多,懂python的程序员很受欢迎.

请问学过Python语言的朋友,它有什么吸引人的地方?大多数人会认为它是一种易学、易读、易维护的语言,所以有很多用户喜欢使用和学习,它真的是一门用途广泛的语言。

Python语言最基本的语法是:缩进、控制语句、表达式、函数、对象方法、类型和数学运算。只有学习了python的基本语法,才能开始正式应用的学习,例如:图形处理、数学处理、文本处理、数据库、WEB编程、爬虫等实际应用。

python 3.3是最新版本,但是很多人还是更喜欢向python 2学习。由于python 3的第三方支持并不完善,在学习的过程中会出现莫名其妙的问题。不妨从已经成熟的 python 2 开始。之后过渡到 python 3 也很容易。

HOW TO 用于定义函数。Python 程序员应该很容易理解这个程序。ABC 语言使用冒号和缩进来表示程序块。行尾没有分号。for 和 if 结构中也没有括号 ()。赋值使用 PUT 而不是更常见的等号。这些更改使 ABC 程序读起来像一段文本。尽管它具有良好的可读性和易用性,但 ABC 语言最终并没有流行起来。当时,ABC语言编译器需要比较高端的电脑才能运行。而这些计算机的用户通常都是精通计算机的,他们更多地考虑程序的效率而不是学习的难易程度。除了硬件上的困难,ABC语言的设计也存在一些致命的问题:扩展性差。ABC 语言不是模块化语言。如果你想给 ABC 语言增加功能,比如对图形的支持,你必须做很多改变。不能直接执行 IO。ABC 语言不能直接操作文件系统。虽然您可以通过文本流之类的方式导入数据,但 ABC 无法直接读取和写入文件。输入和输出困难对计算机语言来说是致命的。你能想象一辆不能开门的跑车吗?过于创新。ABC用自然语言来表达程序的意思,比如上面程序中的HOW TO。但是,对于程序员来说,他们更习惯于使用function或者define来定义一个函数。同样,程序员更习惯于用等号分配变量。ABC语言虽然特殊,但也很难学。传播困难。ABC 编译器很大,必须保存在磁带上。Guido 来访时谷歌新系统用什么语言,他必须有一个大磁带才能为其他人安装 ABC 编译器。这样一来,ABC语言就很难迅速传播开来。1989 年,为了度过圣诞假期,Guido 开始为 Python 语言编写编译器。Python 的名字来源于 Guido 钟爱的电视剧,Monty Python 的飞行马戏团。他希望这种名为 Python 的新语言能够满足他的愿景:在 C 和 shell 之间创建一种功能齐全、易于学习和可扩展的语言。作为一名语言设计爱好者,Guido 已经尝试过设计语言。这一次,只是纯粹的黑客行为。他必须有一个大磁带才能为其他人安装 ABC 编译器。这样一来,ABC语言就很难迅速传播开来。1989 年,为了度过圣诞假期,Guido 开始为 Python 语言编写编译器。Python 的名字来源于 Guido 钟爱的电视剧,Monty Python 的飞行马戏团。他希望这种名为 Python 的新语言能够满足他的愿景:在 C 和 shell 之间创建一种功能齐全、易于学习和可扩展的语言。作为一名语言设计爱好者,Guido 已经尝试过设计语言。这一次,只是纯粹的黑客行为。他必须有一个大磁带才能为其他人安装 ABC 编译器。这样一来,ABC语言就很难迅速传播开来。1989 年,为了度过圣诞假期,Guido 开始为 Python 语言编写编译器。Python 的名字来源于 Guido 钟爱的电视剧,Monty Python 的飞行马戏团。他希望这种名为 Python 的新语言能够满足他的愿景:在 C 和 shell 之间创建一种功能齐全、易于学习和可扩展的语言。作为一名语言设计爱好者,Guido 已经尝试过设计语言。这一次,只是纯粹的黑客行为。深受喜爱的电视剧,巨蟒的飞行马戏团。他希望这种名为 Python 的新语言能够满足他的愿景:在 C 和 shell 之间创建一种功能齐全、易于学习和可扩展的语言。作为一名语言设计爱好者,Guido 已经尝试过设计语言。这一次,只是纯粹的黑客行为。深受喜爱的电视剧,巨蟒的飞行马戏团。他希望这种名为 Python 的新语言能够满足他的愿景:在 C 和 shell 之间创建一种功能齐全、易于学习和可扩展的语言。作为一名语言设计爱好者,Guido 已经尝试过设计语言。这一次,只是纯粹的黑客行为。

一种语言的诞生

1991 年,第一个 Python 编译器诞生了。用C语言实现,可以调用C语言库文件。从一开始,Python 就拥有:类、函数、异常处理、包括表和字典在内的核心数据类型,以及基于模块的扩展系统。许多 Python 语法来自 C,但受到 ABC 语言的强烈影响。ABC 语言中的一些规定至今仍存在争议,例如强制缩进。但是这些语法规则使 Python 易于阅读。另一方面,Python 明智地选择遵守一些约定,尤其是 C 语言的约定,例如返回等于赋值。圭多认为,如果某件事是由“常识”确立的,就没有必要过度纠缠。Python 从一开始就特别关注可扩展性。Python 可以在多个级别进行扩展。从高层次上讲,您可以直接导入 .py 文件。在后台,您可以引用 C 库。Python 程序员可以快速使用 Python 编写 .py 文件作为扩展模块。但是当性能是一个重要的考虑因素时,Python 程序员可以深入到底层,编写 C 程序,编译成 .so 文件,然后导入 Python 中使用。Python就像用钢盖房子,先定义一个大框架。并且程序员可以在这个框架下相当自由地扩展或改变。最初的 Python 完全由 Guido 自己开发。Python 受到 Guido 同事的欢迎。他们可以快速使用反馈并参与 Python 改进。Guido 和一些同事组成了 Python 的核心团队。他们将大部分业余时间都花在了编写 Python 上。随后,Python 扩展到研究所之外。Python隐藏了很多机器层面的细节,交给编译器,在逻辑层面突出编程思维。Python 程序员可以花更多时间思考程序的逻辑,而不是具体的实现细节。这一特性吸引了大量的程序员。Python变得流行起来。

时代造就英雄

我们不得不暂停我们的 Python 时间来看看瞬息万变的计算行业。1990年代初,个人电脑开始进入普通家庭。Intel发布了486处理器,windows发布了一系列以window3.0开头的窗口系统。计算机的性能大大提高。程序员开始关注计算机的易用性,例如图形界面。

视窗 3.0

随着计算机性能的提高,软件世界开始随之发生变化。硬件对于许多个人计算机来说已经足够了。硬件厂商甚至渴望高需求软件的出现,带动硬件的更新换代。C++和Java相继流行起来。C++ 和 Java 提供了面向对象的编程范式和丰富的对象库。C++和Java以牺牲一定的性能为代价,极大地提高了程序的输出。该语言的易用性已提升到一个新的水平。我们记得,ABC 失败的一个重要原因是硬件的性能限制。在这方面,Python 比 ABC 幸运得多。另一个安静的变化是互联网。1990 年代仍是个人电脑时代,Windows 和 Intel 用 PC 称霸世界。尽管基于 Internet 的信息革命尚未到来,但许多程序员和高级计算机用户已经在使用 Internet 进行频繁的交流,例如使用电子邮件和新闻组。互联网大大降低了信息交换的成本。一种新的软件开发模式越来越受欢迎:开源。程序员利用业余时间进行软件开发和开源代码。1991 年,Linus 在 comp.os.minix 新闻组上发布了 Linux 内核源代码,吸引了大量黑客的加入。Linux 和 GNU 一起工作,形成了一个充满活力的开源平台。互联网大大降低了信息交换的成本。一种新的软件开发模式越来越受欢迎:开源。程序员利用业余时间进行软件开发和开源代码。1991 年,Linus 在 comp.os.minix 新闻组上发布了 Linux 内核源代码,吸引了大量黑客的加入。Linux 和 GNU 一起工作,形成了一个充满活力的开源平台。互联网大大降低了信息交换的成本。一种新的软件开发模式越来越受欢迎:开源。程序员利用业余时间进行软件开发和开源代码。1991 年,Linus 在 comp.os.minix 新闻组上发布了 Linux 内核源代码,吸引了大量黑客的加入。Linux 和 GNU 一起工作,形成了一个充满活力的开源平台。

硬件性能不是瓶颈,Python好用,所以很多人转向Python。Guido 维护一个邮件列表,Python 用户可以在其中通过电子邮件进行交流。Python 用户来自多个领域,背景不同,对 Python 的需求也不同。Python 相当开放且易于扩展,因此当用户对现有功能不满意时,可以轻松扩展或改造 Python。然后这些用户将更改发送给 Guido,Guido 决定是向 Python 还是标准库添加新功能。如果代码可以被合并到 Python 本身或标准库中,那将是一种莫大的荣幸。由于圭多的最高决策权,他被称为“终生仁慈的独裁者”。Python 被称为“Battery Included”,指的是它的强大功能及其标准库。这些都是来自整个社区的贡献。Python 开发者来自不同的领域,他们将不同领域的优势带到了 Python 中。例如,Python 标准库中的正则表达式引用 Perl,而 lambda、map、filter 和 reduce 等函数引用 Lisp。Python 本身的一些特性和大部分标准库都来自社区。Python 社区不断扩大,并拥有自己的新闻组、网站和基金会。Python 本身的一些特性和大部分标准库都来自社区。Python 社区不断扩大,并拥有自己的新闻组、网站和基金会。Python 本身的一些特性和大部分标准库都来自社区。Python 社区不断扩大,并拥有自己的新闻组、网站和基金会。

从 Python 2.0 开始,Python 也从 maillist 开发方式转变为完全开源的开发方式。已经形成了社区氛围,工作由整个社区共享,Python 发展更加迅速。时至今日,Python的框架已经建立。Python语言以对象为核心组织代码,支持多种编程范式,采用动态类型,自动进行内存回收。Python支持解释操作,可以调用C库进行扩展。Python 有一个强大的标准库。由于标准库系统稳定,Python生态开始向第三方包扩展。这些包,如 Django、web.py、wxpython、numpy、matplotlib、PIL,将 Python 升级为物种丰富的雨林。

启示

Python崇尚美观、清晰、简洁,是一门优秀且应用广泛的语言。Python 在 TIOBE 排名中排名第八。它是谷歌的第三大开发语言,Dropbox的基础语言,豆瓣的服务器语言。Python的发展历程可以作为一个代表,给我很多启发。社区在 Python 的发展中发挥了重要作用。Guido 认为自己不是一个全能的程序员,所以他只负责制定框架。如果问题太复杂,他会选择绕道而行,也就是偷工减料。这些问题最终由社区中的其他人解决。社区里的人才极其丰富,有些人乐于处理离发展有点远的事情,例如创建网站和筹集资金。今天的项目发展更加复杂和庞大,合作和开放的心态是项目最终成功的关键。Python从其他语言中学到了很多,无论是进入历史的ABC,还是仍在使用的C和Perl,还有很多其他没有列出的语言。可以说,Python的成功代表了它所借鉴的所有语言的成功。同样,Ruby 借鉴了 Python,它的成功代表了 Python 某些方面的成功。每种语言都是混合体,它有它的优点,但也有各种各样的缺陷。同时,对一种语言“好坏”的判断往往受制于平台、硬件、时代等外部因素。程序员经历了许多语言之争。

关键点常识

Python的发音和拼写

Python的意思是python,出自作者喜欢的一部电视剧(C呢?)

Python 的作者是 Guido van Rossum (Uncle Turtle)

Python 是乌龟叔叔在 1989 年圣诞节期间用 C 语言编写的编程语言,用来度过无聊的圣诞节

Python于1991年正式诞生

图片[1]-Python发展历史Python语言的由来及发展历程是怎样的-老王博客

Python 解释器现在有多种语言实现。我们常用CPython(C语言实现的正式版),其他的有Jython(可以运行在Java平台上)、IronPython(可以运行在.NET和Mono平台上)、PyPy(用Python实现,支持JIT)即时编译)

目前Python有两个版本,Python2和Python3。最新版本分别为 2.7.12 和 3.5.2。现阶段大部分公司使用Python2

二、Python优缺点优缺点

运行速度,如果有速度要求,用C++重写关键部分。

国内市场小(国内主要开发python,目前只有一些web2.0公司)。但随着时间的推移,国内很多软件公司,尤其是游戏公司,已经开始大规模使用他。

缺少中文数据(好的python中文数据屈指可数)。感谢社区,已经翻译了好几本优秀的教材谷歌新系统用什么语言,但是入门级教材很多,进阶的内容只能用英文阅读。

架构选择太多(没有像C#这样的官方.net架构,也没有像ruby那样的架构开发相对集中,因为它的历史很短。Ruby on Rails架构在中小型开发中无人能及——大小的网络程序)。不过,这也从另一个侧面说明了python更好,吸引了更多的人才和更多的项目。

三、Python应用场景

网络应用程序开发

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

用于操作系统管理和服务器运维的自动化脚本

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 编写的系统管理脚本在可读性、性能、代码复用、

科学计算

NumPy、SciPy、Matplotlib 允许 Python 程序员编写科学计算程序。

桌面软件

PyQt、PySide、wxPython 和 PyGTK 是用 Python 快速开发桌面应用程序的工具。

服务器软件(网络软件)

Python对各种网络协议有着完美的支持,所以经常被用来编写服务器软件和网络爬虫。第三方库 Twisted 支持异步网络编程和大多数标准网络协议(包括客户端和服务器),并提供多种工具,广泛用于编写高性能服务器软件。

游戏

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

想法实现、早期产品原型设计和迭代

YouTube、Google、Yahoo!、NASA 都在内部大量使用 Python。

以上就是Python发展史的详细内容。更多详情请关注php中文网其他相关文章!

© 版权声明
THE END
喜欢就支持一下吧
点赞0
分享
评论 抢沙发

请登录后发表评论