为什么称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通过邮件服务器端口发送邮件的方法
Apr 30 Python
两个使用Python脚本操作文件的小示例分享
Aug 27 Python
Python中Threading用法详解
Dec 27 Python
selenium+python设置爬虫代理IP的方法
Nov 29 Python
python做接口测试的必要性
Nov 20 Python
python同义词替换的实现(jieba分词)
Jan 21 Python
Python数组并集交集补集代码实例
Feb 18 Python
浅谈图像处理中掩膜(mask)的意义
Feb 19 Python
Python实现SMTP邮件发送
Jun 16 Python
Python bisect模块原理及常见实例
Jun 17 Python
小结Python的反射机制
Sep 28 Python
Ubuntu16安装Python3.9的实现步骤
Dec 15 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
dede3.1分页文字采集过滤规则详说(图文教程)续四
2007/04/03 PHP
php 团购折扣计算公式
2011/11/24 PHP
深入PHP autoload机制的详解
2013/06/09 PHP
php实现的简单日志写入函数
2015/03/31 PHP
PHP curl模拟登录带验证码的网站
2015/11/30 PHP
javascript中巧用“闭包”实现程序的暂停执行功能
2007/04/04 Javascript
JavaScript 编写匿名函数的几种方法
2010/02/21 Javascript
jquery 结合C#后台的数组对文章的关键字自动添加链接的代码
2011/07/15 Javascript
JQuery调用WebServices的方法和4个实例
2014/05/06 Javascript
js Canvas绘制圆形时钟教程
2017/02/06 Javascript
vue实现一个移动端屏蔽滑动的遮罩层实例
2017/06/08 Javascript
React利用插件和不用插件实现双向绑定的方法详解
2017/07/03 Javascript
nodeJS(express4.x)+vue(vue-cli)构建前后端分离实例(带跨域)
2017/07/05 NodeJs
解决npm管理员身份install时出现权限的问题
2018/03/16 Javascript
vue中使用element-ui进行表单验证的实例代码
2018/06/22 Javascript
JavaScript求一个数组中重复出现次数最多的元素及其下标位置示例
2018/07/23 Javascript
jquery实现联想词搜索框和搜索结果分页的示例
2018/10/10 jQuery
微信小程序模板消息限制实现无限制主动推送的示例代码
2019/08/27 Javascript
js实现上下左右键盘控制div移动
2020/01/16 Javascript
Python实现的下载8000首儿歌的代码分享
2014/11/21 Python
Python编程中的文件操作攻略
2015/10/16 Python
CentOS7.3编译安装Python3.6.2的方法
2018/01/22 Python
Sanic框架安装与简单入门示例
2018/07/16 Python
Python魔法方法功能与用法简介
2019/04/04 Python
解决Django Static内容不能加载显示的问题
2019/07/28 Python
python sqlite的Row对象操作示例
2019/09/11 Python
pyqt5中动画的使用详解
2020/04/01 Python
入党申请书自我鉴定
2013/10/12 职场文书
新闻专业学生的自我评价
2014/02/13 职场文书
老人节主持词
2015/07/04 职场文书
新郎结婚感言
2015/07/31 职场文书
高三英语教学反思
2016/03/03 职场文书
2016创先争优活动党员公开承诺书
2016/03/24 职场文书
使用Golang的channel交叉打印两个数组的操作
2021/04/29 Golang
nginx location 带斜杠【 / 】与不带的区别
2022/04/13 Servers
SQL Server删除表中的重复数据
2022/05/25 SQL Server