python为什么是胶水语言
胶水语言
先从Hello world开始。所有学python的童鞋都会从这句话开始:
print "Hello World!"。
问题来了:为什么所有语言第一件做的事情,就是Hello World?
其实,他代表了UNIX统一的文本处理模型及接口。这些个玩意,Windows的编程领域是很难接触到的也很难理解的。
下面写个范例。比如我这么干了:
# file: say.py import sys txt = sys.argv[1] print "Hello %s!"%(txt)
那么我就可以在Linux或Mac的终端上直接输入:
python say.py World
输出结果就会是:
Hello World!
这样就确保了,在终端调用上的直观与可编程性。
这样,我就不用必须在别的python语言里面调用python了,而能够直接在shell上跟其它处理程序直接连接。
什么是胶水语言?
胶水语言(glue language)是用来连接软件组件的程序设计语言(通常是脚本语言)。
胶水语言的例子:
Shell scripts Python Ruby Lua Tcl Perl PHP 参见: Category:脚本语言
Glue language (uses OS commands, interfaces, DLLs, shared libraries, services, objects, etc.)
胶水语言:使用输入输出命令,接口,动态链接库,静态链接库,服务,对象等。
在Python的内部机制中有:
标准版本的python是用C来编译的,又称为Cpython,除此之外,还有一些其他的python实现。
2.java实现版本。这个解释器完全用java写成,名为Jython。尽管和标准版的有区别,但是很小,而且启动环境也完全相同
Jython的优点:
(1)只要有虚拟机,就可以运行Jython
(2)拥有访问java包与类库的能力
(3)为java开发环境提供了脚本引擎
(4)鼓励Python到java的开发
3..net实现。用C#语言完成,名为IronPython。和jython差不多。
意义:
在终端上我可以随意地组合他和其它程序,作为一个中间处理模块。
而且,他可以如此地简单便捷,一些简单的脚本只需要cat一下马上就能明白是什么意思。
一个表达式一行代码,代码块有一致的标准的缩进,标准的命名方式,简练的语言,支持注释……
别的程序要访问或调用,很简单,一个命令把指定数据输入到这里就好,然后要怎么拼接怎么拼接;
周期性地处理也没问题,输出到文件,等待别的程序调用。
系统脚本上:
比SHELL多了很多数学及字符串处理能力,还多了很多很好用的迭代方法,还多了很多的原生的数据结构;
比PERL多了很要命的代码可读性。
比起ruby和nodejs,他基本所有机器都预装,而且已经经历了时间的考验。虽然,将来的确会有被这俩货代替的可能性。
比起C/C++,他多了一个终端、甚至像ipython这样的加强版神器终端,可以边调试代码边把没问题的代码写进文件。而且,源码即可执行。
来源:PY学习网:原文地址:https://www.py.cn/article.html