2015-09-06 44 views
0

http://www.toptal.com/python/why-are-there-so-many-pythons这种情况下(蟒蛇文章)的接口定义引自

出人意料的是,这是一个相当模糊的说法。 'Python'是什么意思?我的意思是Python的抽象接口?我的意思是CPython,通用的Python实现(并且不要与名字相似的Cython混淆)?

[...]

的第一件事情做一个比较时意识到的是,“Python的是一个接口。有一个Python应该做什么以及它应该如何表现的规范(与任何接口一样)。并有多个实现(与任何接口一样)。

要实现的第二件事是'解释'和'编译'是实现的属性,而不是接口。

这里“界面”一词根本不清楚。他的意思是“标准”吗?如果是这样,他为什么不写这些?

+0

看起来你的问题一开始就缺少一些文字? – regular

回答

0

他们这样做意味着接口,同一术语的缩写API(应用程序编程接口)在用于软件定义接口的标准;或者换句话说,Python界面是标准化的。

Wikipedia definition

在计算中,一个接口是共享边界跨越其的计算机系统交换信息的两个单独的部件。交换可以在软件,计算机硬件,外围设备,人和它们的组合之间进行。

的接口是一个显影剂与Python语言和库相互作用的表面积。理论上,任何人都可以通过描述这个接口来实现他们自己的Python语言环境,并且内置类型和函数以及标准库。

Python还有其他标准,例如Python Enhancement Proposal processC code written for the CPython projectPython code itself的样式指南。但是,这些不是接口。

+0

有趣的是,你的意思是说,接口是代码自我和实现处理代码(如果不是真的,请详细解释一下)如果有的话,python和cpython之间的区别如我们所知python使用BY REFERENCE cpython! – user5305518

+0

UP可以请您解释更多 – user5305518

+0

接口是实现应该做什么的*定义*规范可召集的签名,语言应该如何表现的描述等。代码本身应符合规范。 –

0

接口在这里意味着定义的含义。 Python界面是如何使用该语言与计算机进行交互的定义。实现(可能是CPython或IronPython)根据与计算机的接口(代码)完成工作。

0

这里是另一种方式来想一想:

你的界面Python的实施标准库 附带了Python。

所有可用的Python下载都是在特定的运行时或平台上实现的python语言。

用C语言编写的标准参考实现简单地称为“Python”。

符合Python标准实现的Python的所有实现都附带了Python标准库。

但是,实施者可以自由地包含其他工具作为该特定实现的一部分。

举个例子,在Jython中(在Java运行时的Python实现),你可以写下面的代码:

>>> from java.lang import System as javasystem 
>>> javasystem.out.println("Hello World") 
Hello World 

java.lang的东西是特定于Jython的Python实现。在python.org上的“标准Python”文档中找不到任何文档。