当前位置: 首页 > 面试题库 >

Go和Cython之间的差异[关闭]

长孙鸿
2023-03-14
问题内容

今天,我的一个好朋友问我最新的Go语言和Cython之间的主要区别是什么,后者是Python的一组C扩展。我对Python的了解不多,有人可以告诉我为什么Go比Cython更好/更差吗?


问题答案:

Cython并不是传统意义上的语言。它是构建Python扩展程序的预处理器,该扩展程序采用类似Python的语法(实际上,他们力求完全兼容Python)并生成C代码(使用Python
C
API)。这样做可以包含一些特殊情况的优化,但是真正的好处是,当您添加Cython特定的静态类型信息时,该信息已合并到C代码中,从而绕开了这些操作的Python运行时并提高了速度。

Go是一种编译的html" target="_blank">编程语言。Go可以做的第一件事是生成一个不包含Python运行时的可执行文件/启动Python解释器-
这在Cython中是不可能的。(在技术上可能并非不可能-
但是,如果您不使用Python,则实际上没有必要使用Cython)。由于Cython仅产生C语言,因此您在注释中的大多数问题实际上并不适用-
您可以使用任何C语言调试器(尽管Python扩展这一事实使事情变得更加复杂)。



 类似资料:
  • 度量可以度量一些有用的领域,但是有什么区别和联系呢?

  • 和操作符之间有什么区别,它们的用例是什么?他们似乎都在等待一项任务?

  • 问题内容: 很快就有两个相等运算符:double equals( )和Triple equals( ),两者之间有什么区别? 问题答案: 简而言之: 操作员检查其实例值是否相等, 操作员检查引用是否指向同一实例, 长答案: 类是引用类型,可能有多个常量和变量在幕后引用类的同一单个实例。类引用保留在运行时堆栈(RTS)中,其实例保留在内存的堆区域中。当您控制平等时, 这意味着它们的实例是否彼此相等。

  • 我编写了一个简单的脚本,它接受任意数量的参数来演示< code>$@和< code>$*之间的区别: 在我做的 CLI 上 这就是打印出来的 因为它们是相同的,这是否意味着等于?还是我遗漏了一点?

  • 本文向大家介绍成本差异和进度差异之间的差异,包括了成本差异和进度差异之间的差异的使用技巧和注意事项,需要的朋友参考一下 对于任何应用程序或专门用于任何项目,最关注的因素之一是在开发前和开发后阶段的预算管理和时间管理。因此,要评估任何项目的这两个主要因素,有很多方法,其中成本差异和进度差异是两个重要且主要的方法。 顾名思义,“成本差异”基于项目开发中花费的成本,而“进度差异”则基于相同开发中花费的时

  • 问题内容: 为了解决我对goroutine的一些误解,我去了Go游乐场并运行了以下代码: 如我所料,Go操场出现了一个错误: 过程花费了太长时间 。 这似乎暗示在其中创建的goroutine 永远运行。 但是,当我在自己的机器上运行相同的代码时,几乎立即获得以下输出: 这似乎暗示主goroutine完成时,其中的goroutine将退出。 这是真的? 还是主goroutine完成,而其他gorou