在线客服
扫描二维码
下载博学谷APP
扫描二维码
关注博学谷微信公众号
目前互联网技术领域,编程语言种类非常的多,哪种语言更具有发展前景,主要决定因素在于两个方面,第一是整体互联网市场发展技术要求,第二是要了解各种编程语言的应用以及发展趋势。对于Python编程语言而言,随着人工智能以及大数据的普及,一度成为炙手可热的技术方向。为什么Python能够得到众多互联网工作者热衷的编程语言呢?首先我们要了解Python的发展历程,从而更好的判断Python在每个阶段发展过程中的重要作用。

Python的诞生
Python是由荷兰人Guido van Rossum研发的。Guido van Rossum于1982年获得阿姆斯特丹大学数学和计算机硕士学位,当时Guido在CWI(数学与计算机科学国家研究所)工作,主要是为ABC语言贡献代码,工作一段时间后,他感觉现有的编程语言对非计算机专业的人十分不友好,于是1989年12匜,他构思了一门致力于解决问题的编程语言,这就是Python最初的来源。
1991年,Python的第一个解释器诞生。它有C语言实现,而且受到ABC语言的影响,因此其中很多语法来源于C语言和ABC语言。而Python1.0版本真正发布于1994年1月,这个版本主要新功能是lambda、map、filter和reduce。
Python2.0版本是在6年半之后的2000年10月份发布的,这个版本的主要新功能是内存管理和循环检测垃圾收集器以及对Unicode的支持,构成了现在Python语言框架的基础。之后再2004年,Python升级到2.4版本,同年最流行的Web框架Django诞生。之后Python陆续推出Python2.5/2.6/2.7版本。截止目前仍然有很多企业在使用Python2.7版本。不过自2020年1月1日期,Python2.x版本将不再得到支持。Python的核心开发人员将不再提供其错误修复版或安全更新,Python2.x即将进入付费时代。
目前Python开发主流应用的是Python3.x版本,但是Python3和Python2版本有很多代码并不兼容,因此建议大家如果想要学习Python编程语言,可以直接从Python最新版本开始。目前最流行的Python版本是3.7版本。
在这里需要重点和大家分享一下Python2和Python3版本之间的区别。
一、核心差异
1、Python2中字符串有str和Unicode两种类型,而Python3中只支持Unicode下的string。
2、Python3中采用绝对路径的方式进行import
3、Python3对于缩进更加严格,tab和space共存会导致报错TabError。而Python2中一个tab和8个space是等价的。
二、废弃差异
1、Python3中废弃print语句,统一使用print函数;
2、Python3中废弃exec语句,统一使用exec函数;
3、Python中废弃execfile语句,推荐使用exec(open(“./filename”).read())
4、Python3中废弃“<>”表示不相等,统一使用“!=”
5、Python3中废弃long证书类型,统一使用int
6、Python3中废弃Xrange函数,统一使用range,同时range的机制修改并提高了大数据集生成效率。
7、Python3中不在返回list对象
8、Python3中废弃iterator的next()函数,统一使用next(iterator)
9、Python3中废弃raw_input函数,统一使用input函数
10、Python3中废弃file函数,统一使用open函数处理文件。
11、Python3中废弃apply函数。
12、Python3中StandardError被废弃,统一使用Exception
出去这些不同之外,Python3还在某些语法和基本操作上有一些改动。对于Python的使用来说,最重要的变化是因为版本不兼容导致的第三方工具包、系统安装支持等方面的重大变化。
如果你是初学者,建议你直接通过Python3版本进行学习,对于Python2版本相关的知识稍作了解,如果在未来工作中会遇到Python2版本的相关开发工作,你可以对照Python2月Python3版本的进行开发。而对于正在使用Python2版本开发的同学而言,建议你能够尽快的熟悉Python2与Python3之间的差异,尽快迁移自己的程序。
拓展阅读:
>ABC语言:ABC语言是一个为编程初学者打造的研究项目,是NWO(荷兰科学研究组织)旗下CWI(数学与计算机科学国家研究所)主导研发的一种交互式,结构化高级语言,旨在替代BASIC、Pascal等语言,用于教学及原型软件设计。Python之父Guido van Rossum层为ABC系统开发中工作了数年。在这里仅做了解即可。
>lambda:lambda表达式是一个匿名函数,可以包含表达式和语句,并且可用于创建委托或表达式目录树类型。
>map:map()函数会根据提供的函数对制定序列做映射。
>filter:filter()函数用于过滤序列,过滤掉不符合条件的元素,返回由符合条件元素组成的新列表。
>reduce:reduce()函数会对参数序列中元素进行积累。
>Django:Django是一个开源的Web应用框架,采用MTV的框架模式,即模型M,试图V和模板T。主要目的是简便、快速的开发数据库驱动的网站。强调代码复用,多个组件可以很方便的以插件形式服务于整个框架。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
Python学习笔记之列表的用法总结
众所周知,Python中最基本的数据结构就是序列,而在许多序列的内置类型中,最常见的要属列表了。简单来说,列表作为可以修改的一种序列,它能作为一个方括号内的逗号分隔值出现。本文为大家总结了列表所有的基本用法,下面就一起来看看关于Python列表的学习笔记吧!
7067
2019-12-24 15:17:42
零基础Python学习路线及阶段学习目标
零基础Python学习路线及阶段学习目标,首先应该夯实Python核心基础、Web前端编程、Django开发框架、Flask开发框架、爬虫与数据分析等知识,理解机器学习相关的基本概念及系统处理流程。
6145
2020-03-06 12:11:29
Python入门简单吗?怎么学Python?
Python在机器学习人工智能领域非常流行,可以说是算法工程师的标配编程语言。Python语言广泛应用在web开发、大数据开发、人工智能开发、机器学习、后端开发等领域之中,近几年Python语言的趋势不断上升发展前景好。
6460
2020-09-24 14:54:24
自学Python需要多长时间从入门到精通?
Python是全球前3大最流行的编程语言之一,以其简洁优美、功能强大、高效率的先天优势成为企业新宠此外,国内计算机教育也越来越重视Python在编程中的地位。Python非常适合零基础的同学学习,比较简单没有指针变量类型等复杂的概念。
10480
2021-01-26 10:39:22
带有参数的装饰器怎么使用?
假设当你使用@my_decorator语法时,是在应用一个以单个函数作为参数的一个包裹函数。Python里每个东西都是一个对象且这包括函数,掌握这点我们可以编写一下能返回一个包裹函数的函数。我们需要能自己写出带有参数的装饰器。
5107
2021-12-02 11:30:02
