虽然软件产业的历史相对于人类历史只是白驹过隙,但世界上却存在非常多的编程语言,「python」就是其中之一 。
Python 语言算得上一门“古老”的编程语言,Python 流行这么久,必然有它的独到之处,本节我们简单介绍 Python 的相关情况 。
文章插图
Python 简史
Python 由 Guido van Rossum 于 1989 年年底出于某种娱乐目的而开发,Python 语言是基于 ABC 教学语言的,而 ABC 这种语言非常强大,是专门为非专业程序员设计的 。但 ABC 语言并没有获得广泛的应用,Guido 认为是非开放造成的 。
Python 的“出身”部分影响了它的流行,Python 上手非常简单,它的语法非常像自然语言,对非软件专业人士而言,选择 Python 的成本最低,因此某些医学甚至艺术专业背景的人,往往会选择 Python 作为编程语言 。
Guido 在 Python 中避免了 ABC 不够开放的劣势,Guido 加强了 Python 和其他语言如c、c++和 java的结合性 。此外,Python 还实现了许多 ABC 中未曾实现的东西,这些因素大大提高了 Python 的流行程度 。
2008 年 12 月,Python 发布了 3.0 版本(也常常被称为 Python 3000,或简称 Py3k) 。Python 3.0 是一次重大的升级,为了避免引入历史包袱,Python 3.0 没有考虑与 Python 2.x 的兼容 。这样导致很长时间以来,Python 2.x 的用户不愿意升级到 Python 3.0,这种割裂一度影响了 Python 的应用 。
毕竟大势不可抵挡,开发者逐渐发现 Python 3.x 更简洁、更方便 。现在,绝大部分开发者已经从 Python 2.x 转移到 Python 3.x,但有些早期的 Python 程序可能依然使用了 Python 2.x 语法 。
2009 年 6 月,Python 发布了 3.1 版本 。
2011 年 2 月,Python 发布了 3.2 版本 。
2012 年 9 月,Python 发布了 3.3 版本 。
2014 年 3 月,Python 发布了 3.4 版本 。
2015 年 9 月,Python 发布了 3.5 版本 。
2016 年 12 月,Python 发布了 3.6 版本 。
......
本教程将以 Python 3.x 来介绍 Python 编程,也会简单对比 Python2.x 与 Python 3.x 的语法差异 。
目前,由于大数据、人工智能(AI)的流行,Python 变得比以往更加流行 。在最新的 TIOBE 编程语言排行榜上,Python 己经迅速上升到第 4 位,仅次于 Java、C、C++ 。
Java 占据了世界上绝大部分电商、全融、通信等服务端应用开发,而 C、C++ 占据了世界上绝大部分贴近操作系统的硬件编程,这三门语言的地位太难动摇了 。
Python 的特点
Python 是一种面向对象、解释型、弱类型的脚本语言,它也是一种功能强大而完善的通用型语言 。
相比其他编程语言(比如 Java),Python 代码非常简单,上手非常容易 。比如我们要完成某个功能,如果用 Java 需要 100 行代码,但用 Python 可能只需要 20 行代码,这是 Python 具有巨大吸引力的一大特点 。
Python 的两大特色是清晰的语法和可扩展性:
Python 的语法非常清晰,它甚至不是一种格式自由的语言 。例如,它要求 if 语句的下一行必须向右缩进,否则不能通过编译 。
Python 的可扩展性体现为它的模块,Python 具有脚本语言中最丰富和强大的类库(这些类库被形象地称为“batteries included,内置电池”),这些类库覆盖了文件 I/O、GUI、网络编程、数据库访问、文本操作等绝大部分应用场景 。
此外,Python 的社区也很发达,即使一些小众的应用场景,Python 往往也有对应的开源模块来提供解决方案 。
Python 作为一门解释型的语言,它天生具有跨平台的特征,只要为平台提供了相应的 Python 解释器,Python 就可以在该平台上运行 。
解释型语言几乎天然是跨平台的 。
Python 自然也具有解释型语言的一些弱点:
速度慢:Python 程序比 Java、C、C++ 等程序的运行效率都要慢 。
源代码加密困难:不像编译型语言的源程序会被编译成目标程序,Python 直接运行源程序,因此对源代码加密比较困难 。
今天的分享就到此结束,如果我的分享对你有帮助,也欢迎大家转发我的文章让更多人受益,如果你在学习Python的过程当中有遇见任何问题,可以加入我的python交流学习qq群:250933691,多多交流问题,互帮互助,群里有不错的学习教程和开发工具 。学习python有任何问题(学习方法,学习效率,如何就业),可以随时来咨询我【python是什么?连小学都普及的Python到底是什么】上面两个问题其实不是什么大问题,关于第一个问题,由于目前计算机的硬件速度越来越快,软件工程往往更关注开发过程的效率和可靠性,而不是软件的运行效率;至于第二个问题,则更不是问题了,现在软件行业的大势本来就是开源,就像 Java 程序同样很容易反编译,但丝毫不会影响它的流行 。
- ios是什么意思?iOS的各种版本名称都是什么意思?
- java是什么?Java到底能干嘛?
- 服务器是什么?大家都听说过服务器,那什么是服务器呢
- web是什么意思?零基础能不能学Web前端开发?
- php是什么?php有哪些优点?
- tmp是什么文件?电脑提示c:\windows\temp\*.tmp文件损坏的解决方法
- 辣椒高产巧施肥指的是什么?种植有技巧
- 天使人综合症症状 天使人综合症是什么?
- 液晶电视万能遥控器特色是什么
- 筚路蓝缕的意思是什么