如何看待有人说python是C 底层,甚至说C添加了C 特性现在的C就是C ,已经没有纯C了?

问答如何看待有人说python是C 底层,甚至说C添加了C 特性现在的C就是C ,已经没有纯C了?
秦嘉欣 管理员 asked 2 年 ago
3 个回答
程泽颖 管理员 answered 2 年 ago

对于有人声称 Python 是 C 的底层,甚至认为 C 添加了 C++ 特性后就等同于 C++,进而认为纯 C 已经不复存在的说法,我持保留意见。以下是我对此观点的详细分析:

Python 是 C 的底层吗?

从技术角度来看,Python 解释器是用 C 语言编写的,这意味着 Python 的底层实现依赖于 C。这使得 Python 能够与 C 代码交互,并访问底层系统资源。然而,这并不意味着 Python 仅仅是 C 的一个前端或一层包装。

Python 具有自己的语法、语义和运行时环境。它是一种高级语言,提供了面向对象编程、动态类型和高级数据结构等特性。这些特性使 Python 能够用于广泛的应用程序开发,而无需深入了解 C 的复杂性。

C 增加了 C++ 特性吗?

C++ 是一种从 C 语言发展而来的扩展语言。它引入了面向对象编程、模板、异常处理和泛型编程等新特性。然而,C++ 仍然是一种独立的语言,与 C 存在着根本性的差异。

C 语言标准并没有包含 C++ 的特性。C++ 的语法、语义和标准库都与 C 有着明显的区别。虽然可以将 C 代码编译成 C++ 代码,但反过来则不行。

纯 C 还存在吗?

尽管 C++ 的兴起,纯 C 语言仍然存在并广泛使用。C 是一种成熟稳定的语言,特别适用于开发操作系统、嵌入式系统和高性能计算应用程序。

许多流行的操作系统,如 Linux、Windows 和 macOS,都是用纯 C 编写的。此外,许多应用程序,如数据库、网络服务器和编译器,也依赖于纯 C 的实现。

结论

对于 Python 是 C 的底层、C 增加了 C++ 特性、纯 C 不再存在的说法,我持以下观点:

  • Python 依赖于 C 语言的底层实现,但它是一种独立的语言,拥有自己的特性。
  • C++ 是一种从 C 语言扩展而来的独立语言,其语法和语义与 C 不同。
  • 尽管有 C++ 的兴起,但纯 C 仍然存在并广泛用于开发关键应用程序和系统软件。

因此,我认为将 Python 简单地描述为 C 的底层,将 C 误认为 C++ 的扩展,并声称纯 C 不再存在的说法过于简单化。这些语言具有不同的特性和应用领域,在当代软件开发中继续扮演着重要的角色。

张彤淑 管理员 answered 2 年 ago

对于有人声称 Python 是 C 的底层,甚至认为 C 添加了 Python 特性,如今已经没有纯 C 的说法,我持有不同的看法。

首先,Python 并不是 C 的底层。Python 是一种解释型语言,由 Python 解释器执行。C 是一种编译型语言,由编译器将代码编译成机器码。因此,Python 并不会直接使用或依赖 C 的底层代码。

其次,虽然 C 和 Python 有一些相似之处,但它们是两门本质上不同的语言。Python 是一种面向对象、动态类型的语言,而 C 是一种面向过程、静态类型的语言。Python 提供了高级特性,例如列表、字典和异常处理,而 C 则更多地关注于底层内存管理和指针操作。

第三,尽管有人可能会使用 Python 的 C API 来扩展 Python 解释器,但这些扩展只是 Python 生态系统的一部分。它们并不是 C 本身的一部分,并且不代表 C 已经融入了 Python 的特性。

再说,C 仍然是一种广泛使用的语言,在系统编程、嵌入式系统和高性能计算等领域中依然发挥着至关重要的作用。它提供了对底层硬件和操作系统的直接访问,使其在需要性能和控制的应用中非常有用。

虽然 Python 在某些领域已经超越了 C,但它并不能完全取代 C。两门语言都有其独特的优势和用例。

因此,我认为说 Python 是 C 的底层,或者 C 已经融合了 Python 的特性并取代了纯 C,这是一种过于简化的说法。虽然这两种语言可能存在一些重叠,但它们仍然是本质上不同的语言,并且在不同的领域发挥着重要的作用。

宋武文 管理员 answered 2 年 ago

作为一名软件开发人员,我经常听到有人声称 Python 是 C 的一种底层语言,甚至有人说 C 添加了 Python 的特性,导致现在的 C 已经没有了纯 C。我认为有必要对这些说法进行仔细的分析,澄清它们之间的关系。

Python 与 C 的关系

Python 是一种解释型语言,这意味着它的代码在运行时被解释器逐行执行。另一方面,C 是一种编译型语言,这意味着它的代码在运行之前被编译成机器可执行的格式。这种根本的区别决定了它们之间的关系。

虽然 Python 不是 C 的底层,但它确实依赖 C 的底层支持。Python 的解释器是用 C 编写的,它允许 Python 代码与底层硬件交互。例如,Python 的标准库中包含了大量的 C 扩展模块,这些模块提供了对系统库和函数的访问。

C 添加 Python 特性

有人声称 C 添加了 Python 特性,从而导致了 Python 的出现。然而,事实并非如此。Python 是 Guido van Rossum 在 1989 年开发的一种独立语言,与 C 的发展没有直接关系。

虽然 C 和 Python 有一些相似之处,例如语法和数据类型,但它们是完全不同的语言,具有不同的目的和设计。C 是一种低级语言,专注于硬件控制和系统编程,而 Python 是一种高级语言,强调易用性和可读性。

纯 C 的消失

这里提到的“纯 C”的概念是不准确的。C 语言本身并没有消失,它仍然广泛用于系统编程、操作系统开发和嵌入式系统。然而,随着 Python 等高级语言的普及,纯 C 编程变得越来越少见。

原因在于,高级语言提供了更高的抽象级别,允许开发人员专注于解决问题的逻辑而不是底层实现细节。因此,对于许多应用程序来说,Python 等语言现在是首选,而纯 C 编程仅限于需要底层控制或硬件优化的领域。

结论

综上所述,Python 并不是 C 的底层,而且 C 也没有添加 Python 特性。Python 是一个独立的语言,它依赖 C 的底层支持。虽然纯 C 编程仍在使用,但它在现代软件开发中变得越来越少见,因为高级语言提供了更大的抽象和便利性。

公众号