在线客服
扫描二维码
下载博学谷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。主要目的是简便、快速的开发数据库驱动的网站。强调代码复用,多个组件可以很方便的以插件形式服务于整个框架。
— 申请免费试学名额 —
在职想转行提升,担心学不会?根据个人情况规划学习路线,闯关式自适应学习模式保证学习效果
讲师一对一辅导,在线答疑解惑,指导就业!
相关推荐 更多
自学机器学习应该避免的三大误区与陷阱
作为人工智能的核心,机器学习成为炙手可热的概念。很多朋友都开始进入机器学习的大军之中,不知道大家在学习的过程中是否注意到“自学机器学习应该避免的三大误区与陷阱”呢?下面小编就和大家一起探讨一下。
7968
2019-08-07 18:11:22
Python正则表达式六种函数实例讲解
Python正则表达式是简介表达一组字符串的表达式,正则表达式可以方便的检查一个字符串是否与某种模式匹配。本文将结合实例给大家讲解六种在正则表达式中的常见函数,分别是re.match、re.search、re.findall、re.compile、re.split和re.sub。
8872
2019-09-02 17:52:33
零基础Python学习路线及阶段学习目标
零基础Python学习路线及阶段学习目标,首先应该夯实Python核心基础、Web前端编程、Django开发框架、Flask开发框架、爬虫与数据分析等知识,理解机器学习相关的基本概念及系统处理流程。
5121
2020-03-06 12:11:29
Python中的函数与变量讲解
不知道大家在学习Python的时候,有没有发现一个问题,函数里边的变量和脚本里边的变量好像是无关的。本文今天要讲的就是Python中的函数与变量,如果大家对于这个方面的内容有困惑,不妨来一起学习一下这个Python的基础内容。
5834
2020-04-29 09:46:23
数据库设计之三范式是什么?有什么作用?
数据库设计之三范式是什么?有什么作用?范式:是对设计数据库提出的一些规范,设计数据库时遵循一定的规则,建立冗余较小、结构合理的数据库更便于查找数据。
6369
2022-01-20 14:07:26
