首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >关于Python的一些基本说明?

关于Python的一些基本说明?
EN

Stack Overflow用户
提问于 2011-01-29 13:55:02
回答 4查看 301关注 0票数 11

昨晚,我遇到了一个叫Jython的术语,这对我来说有点陌生,所以我开始阅读它,只是为了增加我对Python的困惑。我也从未真正使用过Python。这就是我所困惑的。

  1. Python is implemented in C --这是否意味着解释器是用C编写的,还是解释器将其源代码转换为C呢?
  2. CPython不过是最初的Python &这个词是后来发明出来的,是为了区别它和Jython -是真的还是假的?
  3. 既然Python是用C实现的(不太确定这意味着什么),但这是否意味着python可以与任何C代码无缝集成。
  4. Jython是一种新的编程语言,还是它的语法和其他编程结构看起来与原来的python完全相似?还是只有python可以与java代码集成?
  5. 如果我以上的问题都没有回答Python和Jython之间的区别,那是什么呢?
EN

回答 4

Stack Overflow用户

回答已采纳

发布于 2011-01-29 14:07:44

  1. 前者。
  2. 我想是的。严格地说,"Python“只指语言(不管实现如何),但除非区别很重要(例如,在讨论实现细节时),否则它也可以引用实现。"CPython“是最古老、使用最广泛的实现的明确名称,这是事实上的标准。
  3. 不是完全无缝的。处理Python对象的C代码必须与PyObject *混搭,并使用CPython提供的辅助函数将例如Python整数转换为C int。类似地,C代码必须使用接受并返回PyObject *的函数包装,向解释器公开函数和元数据等。您还可以使用例如ctypes来调用本机代码(尽管通常很痛苦)、SWIG等来自动化包装或Cython来用Python交叉语言编写C模块。
  4. 它是Python的另一个实现,即同一种语言。主要区别在于,代码运行在JVM上,因此可以轻松地与Java (或者Scala、闭包或任何其他JVM语言)集成。
  5. Python是一种语言。Jython是该语言的实现。你想知道C和GCC的区别吗?
票数 7
EN

Stack Overflow用户

发布于 2011-01-29 13:59:41

"Python“是语言本身的名称,而不是特定解释器实现的名称,正如"C”是编程语言的名称,而不是特定编译器的名称一样。

"CPython“是用C编写的Python语言解释器的实现,它将Python源代码编译成字节代码并解释字节代码。它是Python语言最古老的参考实现。

"Jython“是Python语言的另一个实现。它将Python代码转换为Java字节代码,这可以在Java虚拟机上执行。

票数 11
EN

Stack Overflow用户

发布于 2011-01-29 14:05:24

( a) Python是一种编程语言。Python代码的解释器是使用C等其他编程语言实现的(我相信,PyPy甚至使用Python本身来实现一种语言)。

( b) CPython,又名经典Python,是用C编写的参考实现,Jython是用Java编写的Python解释器。

c)在Python中使用C库非常容易,例如使用ctype模块。

( d)见b。

( e)见a和b。

票数 3
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/4837218

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档