Python的介绍与发展史_懒猫整理

文章目录

  • 计算机的发展史
  • 什么是Python
  • Python简介及应用领域
  • python的发展背景
  • python语言诞生记
  • python的优缺点
  • python越来越流行的编程语言
  • python主要就业方向

计算机的发展史

在介绍Python之前先介绍一下计算机的发展史:

  • 计算机(computer)俗称电脑,是一种用于高速计算的电子计算机器,可以进行数值计算,又可以进行逻辑计算,还具有存储记忆功能。是能够按照程序运行,自动、高速处理海量数据的现代化智能电子设备。

  • 由硬件系统和软件系统所组成,没有安装任何软件的计算机称为裸机。可分为超级计算机、工业控制计算机、网络计算机、个人计算机、嵌入式计算机五类,目前比较先进的计算机有生物计算机、光子计算机、量子计算机等。

  • 计算机发明者是约翰·冯·诺依曼。

  • 计算机是20世纪最先进的科学技术发明之一,对人类的生产活动和社会活动产生了极其重要的影响,并以强大的生命力飞速发展。

  • 它的应用领域从最初的军事科研应用扩展到社会的各个领域,已形成了规模巨大的计算机产业,带动了全球范围的技术进步,由此引发了深刻的社会变革。目前阶段,计算机已遍及一般学校、企事业单位,进入寻常百姓家,成为信息社会中必不可少的工具。

  • 计算机的应用在中国越来越普遍,改革开放以后,中国计算机用户的数量不断攀升,应用水平不断提高,特别是互联网、通信、多媒体等领域的应用取得了不错的成绩。1996年至2009 年,计算机用户数量从原来的630万增长至6710 万台,联网计算机台数由原来的2.9万台上升至5940万台。

  • 互联网用户已经达到3.16 亿,无线互联网有6.7 亿移动用户,其中手机上网用户达1.17 亿,为全球第一位。


什么是Python

  • Python是一种跨平台的计算机程序设计语言。
  • 是一个高层次的结合了解释性、编译性、互动性和面向对象的脚本语言。
  • 最初被设计用于编写自动化脚本(shell),随着版本的不断更新和语言新功能的添加,越多被用于独立的、大型项目的开发。

Python简介及应用领域

Python是一种解释型脚本语言,可以应用于以下领域:

  • Web 和 Internet开发
  • 科学计算和统计
  • 人工智能
  • 桌面界面开发
  • 软件开发
  • 后端开发
  • 网络爬虫

python的发展背景

  • Python的作者,Guido von Rossum吉多·范·罗苏姆,中国Python程序员都叫他 龟叔),荷兰人。

  • 1982年,龟叔从阿姆斯特丹大学获得了数学和计算机硕士学位。然而,尽管他算得上是一位数学家,但他更加享受计算机带来的乐趣。
    用他的话说,虽然拥有数学和计算机双料资质,他总趋向于做计算机相关的工作,并热衷于做任何和编程相关的事情。

  • 在那个时候,龟叔接触并使用过诸如汇编语言、C等编程语言。
    这些语言的基本设计原则都是让机器能更快运行。

  • 在80年代,虽然IBM和苹果已经掀起了个人电脑浪潮,但这些个人电脑的配置很低,一个大的数组就能占满内存。所有的编译器的核心是做优化,以便让程序能够运行。

  • 但是这种编程方式让龟叔感到苦恼。龟叔知道如何用C语言写出一个功能,但整个编写过程需要耗费大量的时间,即使他已经准确的知道了如何实现。

  • 他的另一个选择是shell。Bourne Shell作为UNIX系统的解释器已经长期存在。
    UNIX的管理员们常常用shell去写一些简单的脚本,以进行一些系统维护的工作,比如定期备份、文件系统管理等等。
    shell可以像胶水一样,将UNIX下的许多功能连接在一起。
    许多C语言下上百行的程序,在shell下只用几行就可以完成。
    然而,shell的本质是调用命令。它并不是一个真正的语言。
    比如说,shell没有数值型的数据类型,加法运算都很复杂。总之,shell不能全面的调动计算机的功能。

  • 龟叔希望有一种语言,这种语言能够像C语言那样,能够全面调用计算机的功能接口,又可以像shell那样,可以轻松的编程。ABC语言让龟叔看到希望。ABC是由荷兰的数学和计算机研究所开发的。

  • 龟叔在该研究所工作,并参与到ABC语言的开发。ABC语言以教学为目的。与当时的大部分语言不同,ABC语言的目标是“让用户感觉更好”。ABC语言希望让语言变得容易阅读,容易使用,容易记忆,容易学习,并以此来激发人们学习编程的兴趣。

  • 1989年,为了打发圣诞节假期,龟叔开始写Python语言的编译器。Python这个名字,来自龟叔所挚爱的电视剧Monty Python’s Flying Circus(巨蟒剧团的飞行的马戏团)。

  • 他希望这个新的叫做Python的语言,能符合他的理想:创造一种C和shell之间,功能全面,易学易用,可拓展的语言。龟叔作为一个语言设计爱好者,已经有过设计语言的尝试。这一次,也不过是一次纯粹的即兴行为。


python语言诞生记

  • 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完全由龟叔本人开发。 Python得到龟叔同事的欢迎。他们迅速的反馈使用意见,并参与到Python的改进。

  • 龟叔和一些同事构成Python的核心团队。他们将自己大部分的业余时间用于改进 Python。

  • 随后,Python拓 展到研究所之外。Python将许多机器层面上的细节隐藏,交给编译器处理,并凸显出逻辑层面的编程思考。

  • Python程 序员可以花更多的时间用于思考程序的逻辑,而不是具体的实现细节。这一特征吸引了广大的程序员。Python开始流行。

  • 随着计算机硬件越来越强大,Python又容易使用,所以许多人开始转向Python。

  • 龟叔维护了一个mail list,Python用户就通过邮件进行交流。

  • Python用户来自许多领域,有不同的背景,对Python也有不同的需求。

  • Python相当的开放又容易拓展,所以当用户不满足于现有功能,很容易对Python进行拓展或改造。

  • 随后这些用户将改动发给龟叔,并由龟叔决定是否将新的特征加入到Python或者标准库中。如果代码能被纳入Python自身或者标准库,这将极大的荣誉。由于龟叔至高无上的决定权,他因此被称为“仁慈的独裁者”


Python现在已经稳居第一!!!

Python的介绍与发展史_懒猫整理_第1张图片

python的优缺点

优点:

  • 规范的代码,简单,易学,高层语言,跨平台(可移植性强),支持面向对象编程,丰富的库等优点。
  • 提高开发效率:(假设开发某一功能模块)
    C – 1000行代码
    java – 100行代码
    python – 20行代码

缺点:

  • Python语言非常完善,没有明显的短板和缺点,唯一的缺点就是执行效率慢,这个是解释型语言所通有的,同时这个缺点也将被计算机越来越强大的性能所弥补。

python越来越流行的编程语言

编程语言

  • 主要是随着计算机软硬件系统的发展以及互联网的发展而快速兴起并发展壮大的。

互联网发展

  • 互联网时代(20年前的风口)(网吧,电脑)
  • 移动互联网时代(5–8年前的风口)(智能手机,安卓,iOS)
  • 大数据时代(三年前的风口)(海量的数据资源)
  • 人工智能时代(现在的风口)(需要通过海量的数据对计算机进行训练,进而实现智能化)

python主要就业方向

1. python Web 开发工程师

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

2. python运维工程师(操作系统管理、服务器运维的自动化脚本)

  • 在很多操作系统里,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. python网络爬虫工程师

  • Python有大量的HTTP请求处理库和HTML解析库,并且有成熟高效的爬虫框架Scrapy和分布式解决方案scrapy-redis,在爬虫的应用方面非常广泛。

4. 科学计算(算法工程师)

  • NumPy、Pandas、Matplotlib可以让Python程序员编写科学计算程序。

5. 桌面软件

  • PyQt、PySide、wxPython、PyGTK是Python快速开发桌面应用程序的利器。

6. 服务器软件(网络软件)

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

7.游戏(python游戏开发工程师)

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

8.测试工程师(懒猫就属于测试哦)

  • 测试工程师,软件质量的把关者,工作起点高,发展空间大。
  • 我国的软件测试职业还处于一个发展的阶段,所以测试工程师具有较大发展前景。
  • 传统的软件行业还是以软件测试工程师为主,但是在新兴的互联网行业大多还是以QA来命名这个职位,也就是质量保证。

Python的介绍到这里就结束了哦,下一篇为Python的安装

你可能感兴趣的:(Python)