为什么称python为胶水语言


Posted in Python onJune 16, 2020

什么是胶水语言?

胶水语言(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这样的加强版神器终端,可以边调试代码边把没问题的代码写进文件。而且,源码即可执行。

知识点补充:

胶水语言

先从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上跟其它处理程序直接连接。

BTW,这其实也是Hello world,呵呵。

到此这篇关于为什么称python为胶水语言的文章就介绍到这了,更多相关python为何称为胶水语言内容请搜索三水点靠木以前的文章或继续浏览下面的相关文章希望大家以后多多支持三水点靠木!

Python 相关文章推荐
Python的Flask框架中web表单的教程
Apr 20 Python
Python ldap实现登录实例代码
Sep 30 Python
Python中对象的引用与复制代码示例
Dec 04 Python
使用pandas对矢量化数据进行替换处理的方法
Apr 11 Python
Python Pexpect库的简单使用方法
Jan 29 Python
Python直接赋值、浅拷贝与深度拷贝实例分析
Jun 18 Python
Python socket非阻塞模块应用示例
Sep 12 Python
python、Matlab求定积分的实现
Nov 20 Python
Python continue语句实例用法
Feb 06 Python
django有外键关系的两张表如何相互查找
Feb 10 Python
如何用Python进行时间序列分解和预测
Mar 01 Python
python和anaconda的区别
May 06 Python
在Keras中利用np.random.shuffle()打乱数据集实例
Jun 15 #Python
Python Socket TCP双端聊天功能实现过程详解
Jun 15 #Python
Python实现验证码识别
Jun 15 #Python
Python Tkinter图形工具使用方法及实例解析
Jun 15 #Python
使用Keras画神经网络准确性图教程
Jun 15 #Python
在tensorflow下利用plt画论文中loss,acc等曲线图实例
Jun 15 #Python
python中元组的用法整理
Jun 15 #Python
You might like
基于PHP与XML的PDF文档生成技术
2006/10/09 PHP
$_GET['goods_id']+0 的使用详解
2013/06/06 PHP
php_imagick实现图片剪切、旋转、锐化、减色或增加特效的方法
2014/12/15 PHP
php使用GD实现颜色渐变实例
2015/06/02 PHP
PHP完全二叉树定义与实现方法示例
2017/10/09 PHP
thinkphp框架实现路由重定义简化url访问地址的方法分析
2020/04/04 PHP
javascript数组的扩展实现代码集合
2008/06/01 Javascript
NodeJS 模块开发及发布详解分享
2012/03/07 NodeJs
javascript正则表达式之search()用法实例
2015/01/19 Javascript
JavaScript实现动画打开半透明提示层的方法
2015/04/21 Javascript
详解JavaScript对W3C DOM模版的支持情况
2015/06/16 Javascript
JS实现的鼠标跟随代码(卡通手型点击效果)
2015/10/26 Javascript
js+css实现回到顶部按钮(back to top)
2016/03/02 Javascript
js拖拽功能实现代码解析
2016/11/28 Javascript
vue-router路由参数刷新消失的问题解决方法
2017/06/17 Javascript
浅谈node.js 命令行工具(cli)
2018/05/10 Javascript
webpack4 处理CSS的方法示例
2018/09/03 Javascript
在JS循环中使用async/await的方法
2018/10/12 Javascript
iview通过Dropdown(下拉菜单)实现的右键菜单
2018/10/26 Javascript
js简单的分页器插件代码实例
2019/09/11 Javascript
axios实现文件上传并获取进度
2020/03/25 Javascript
js屏蔽F12审查元素,禁止修改页面代码等实现代码
2020/10/02 Javascript
JavaScript实现拖动对话框效果的实现代码
2020/10/12 Javascript
微信小程序实现底部弹出模态框
2020/11/18 Javascript
python修改操作系统时间的方法
2015/05/18 Python
基于Python数据可视化利器Matplotlib,绘图入门篇,Pyplot详解
2017/10/13 Python
Python实现简单石头剪刀布游戏
2021/01/20 Python
python GUI库图形界面开发之PyQt5输入对话框QInputDialog详细使用方法与实例
2020/02/27 Python
keras训练浅层卷积网络并保存和加载模型实例
2020/07/02 Python
matplotlib交互式数据光标mpldatacursor的实现
2021/02/03 Python
纯css3显示隐藏一个div特效的具体实现
2014/02/10 HTML / CSS
建筑文秘专业个人求职信范文
2013/12/28 职场文书
2014年银行员工工作总结
2014/11/12 职场文书
2016机关干部作风建设心得体会
2016/01/21 职场文书
廉洁自律承诺书2016
2016/03/25 职场文书
vue项目两种方式实现竖向表格的思路分析
2021/04/28 Vue.js