python 是一门“脚本语言”吗? | 第一部分 开始 —— 第 1 章: python q&a 环节 |《学习 python:强大的面向对象编程(第 5 版)》| python 技术论坛-江南app体育官方入口
python 是一门通用的编程语言,通常应用于脚本角色。它通常定义为一门面向对象的脚本语言——这个定义混合了对 oop 的支持和对脚本角色的全面定位。如果非要用一句话来讲,我会说 python 可能广为人知的作为一门通用的编程语言。它融合了面向过程、面向函数、面向对象的编程范式——这句话概括了当前 python 的丰富性和范围。
尽管如此,“脚本”这个术语仍然像胶水一样的粘在 python 上,可能是和其它工具所需的更大编程努力所区分。比如,人们通常使用单词“脚本”来代替“程序”来描述一个 python 代码文件。为了和这个传统一致,本书交替使用术语“脚本”和“程序”,同时有一个轻微的偏好:用“脚本”来描述一个更简单的顶层文件,“程序”用来指一个更复杂的多文件应用。
然而,因为术语“脚本语言”对不同的观察者有许多不同的意义。一些人更倾向于这个术语根本不要用于python。事实上,当人们听到 python 给到如下标签的时候,通常倾向于做出三种非常不同的联想,其中一些比另一些更有用 :
shell 工具
有时,当人们听到 python 被描述为一门脚本语言时,认为这意味着 python 是一个编写面向操作系统脚本的工具。那些程序通常从控制台命令行启动,执行像处理文本文件和启动其它程序的任务。
python 程序可以而且确实扮演这样的角色,但是这只是几十个常见python应用领域中的一个。它不仅仅是一个更好的 shell 脚本语言。
控制语言
对另一些人来说,脚本意味着是用来控制和管理(也就是脚本化)其它应用组件的胶水层。 python 程序确实经常部署在更大应用的上下文中,比如为了测试硬件设备, python 程序可能会调用提供对设备的低级访问权限的组件。同样,程序可以在重要的位置运行 python 代码来支持终端用户的产品自定义,而无需重新发布和重新编译整个系统的源代码。
python 的简洁性使得它是一个自然的灵活的控制工具。虽然,技术上讲,这也仅仅是一个常见的 python 作用。许多人(可能是大多数) python 程序员甚至从来没有使用或者不知道其它集成组件,而只是在编写单独的脚本。它不仅仅是一个控制语言。
易于使用
可能理解术语“脚本语言”的最佳方式就是它指一个用来快速编码任务的简单语言。当这个术语用在 python 身上时尤其如此。 python 允许比如c 这种编译化语言快得多的程序开发速度。它的快速开发周期促进了一种探索性的、增量式的编程模式。这种模式只有经历过才会被欣赏。然而,不要被骗了,python 不仅仅只用于简单的任务。更准确地说,它通过自己的简单、易用和灵活使任务变得简单。 python 有一个简单的功能集,但它允许程序按需扩展其复杂性。正因为如此,它通常用于快速战术任务和长期的战略发展。
所以, python 是一门脚本语言吗?这取决于你问的是谁。通常,术语“脚本”可能最好用来描述 python 所支持的快速和灵活发展开发模式,而非一个特殊的应用领域。