为什么 C 语言仍然占据统治地位?(11)

当今 , 每当谈论软件开发时 , Python似乎总是能出现在对话中 。 毕竟 , Python是“对所有项目的第二佳语言” , 毫无疑问是最通用的语言之一 , 拥有数千个第三方库 。

Python强调的 , 以及它与C最不同的地方 , 是有利于开发速度而不是执行速度 。 一个可能需要一个小时才能用另一种语言写出来的程序——比如C——可能用Python几分钟内就能写好 。 另一方面 , 该程序在C中执行可能需要几秒钟 , 但需要一分钟才能在Python中运行完 。 (一个很好的经验法则:Python程序通常比它们对应的C语言程序运行速度慢一个数量级 。 )但是对于现代硬件上的许多工作 , Python已经足够快了 , 这是它如今广泛应用的一个重要原因 。

另一个主要区别是内存管理 。 Python程序完全由Python运行时进行内存管理 , 因此开发人员不必担心分配和释放内存的细节 。 但同样 , 开发人员的轻松也是以运行时性能为代价的 。 编写C程序需要严格关注内存管理 , 但生成的程序通常是纯机器速度的黄金标准 。

但是 , 在二者的血脉中 , Python和C共享一个深层的关系:Python运行时参考是用C语言编写的 。 这允许Python程序包装用C和C ++编写的库 。 第三方库的Python生态系统的很多重要模块 , 例如机器学习方面的库 , 其核心是C代码 。

推荐阅读