Python与C ++:初学者应该选择什么?

如果您是编程的新手,是计算机老师,还是只是打算让他的孩子开始编程的父母–您一定想知道从哪里开始。 C ++,C,Java,Python –那里有太多选择! 尽管所有这些语言本身都很棒并且很受欢迎,但是C ++和python之间的争论已经有一段时间了。

在比较它们之前,让我们分别查看每种语言。

蟒蛇

通用的高级编程语言Python由Guido van Rossum于1991年创建。创建python的基本目标是简单。 到目前为止,它被视为最简单的语言之一-实际上,它非常接近普通的日常英语。 诸如缩进之类的功能使代码易于阅读且美观(尽管这也是造成强烈反差的原因),而库函数使其功能极为强大,尤其是对于初学者而言。

虽然python绝对是两者中更容易学习的语言,但它还是IEEE 2018顶级编程语言中的顶级语言 。 可以说,它的流行和易用性使python成为行业中非常强大且理想的语言。

C ++

C ++由Bjarne Stroustrup于1979年提出,它也是一种高级通用编程语言。 它基本上是对C的升级,最初被称为“带类C”。 这是C语言中面向对象编程的介绍。

与Python相比,C ++是一种很难学习的语言。 尽管如此,尽管存在学习上的困难,但C ++是一种非常灵活的语言,它使程序员对计算机中的所有内容(包括内存分配)具有强大的控制能力,而这在python中是无法控制的。

尽管Python和C ++都是面向对象的,但封装(数据和功能的绑定作为一个单元)在Python中不可用。

比较Python和C ++

让我们根据许多通用的行业指标来比较这两种语言:

易于学习

初学者的主要决定因素之一是学习的便利性。 如果语言太难了,它甚至可能使程序员偏离轨道,并扼杀了他不断追求更好的愿望。

无疑,Python更接近英语,因此更易于学习。 另一方面,C ++与CPU非常接近,并且处理内存分配,如果这对于初学者来说不小心的话,其结果可能是使用错误的C ++程序破坏了系统。

为了让您了解其简单性,Python的编译步骤为零。 如果您将文件另存为myprogram.py,则只需运行python myprogram.py即可运行该文件。

在这种情况下,阅读Python的Zen可以清楚了解该语言的意图和理念。 Zen中的几行内容如下:

  • 美丽胜于丑陋。
  • 稀疏胜于密集。
  • 如果实现难以解释,那是个坏主意。

C ++没有这样的文档或思路清晰。 它的确是一个庞大的支持者社区,昼夜不停地工作以帮助解决问题。

速度

使用行业级软件时,速度至关重要-尤其是在该软件是实时,时间敏感的实体的情况下。 语言越快,就越有效。 在这里,C ++赢得了胜利。 它比Python快许多倍 ,原因是Python本身是用C(C ++的前身)编写的。

由于我们的辩论严格来说是关于初学者应该学习什么的,因此速度在初学者阶段并不重要。

内存管理

在C ++中,您必须为新变量分配内存,并在它们的工作结束时释放它们。 如果不这样做,可能会导致内存泄漏。 由于C ++不提供垃圾回收,而是使用指针,因此在某些情况下不可避免地发生内存泄漏。

但是,Python中没有此类规则。 Python被编写为自行调整和分配内存–所有功能都是动态分配内存! 如果您是一位经验丰富的程序员,则可能需要从事需要控制内存分配的项目。 但是,作为一个初学者,您无需弄乱这方面。

可读性

C ++有很多语法可供掌握。 但是,它没有缩进规则,这使代码在某些时候看起来像垃圾。 Python,更像英语,它的缩进可以帮助程序员跟踪打开的每个括号。 这可能对初学者来说非常诱人,并且有时代码看起来像艺术品!

为了探究“可读性”方面的观点,让我们看一下给出相同输出的两个代码片段。

C ++

class HelloWorld
{
    public :
        void PrintHelloWorld ()
         {
            std :: cout << "Hello World!\n" ;
        }
};

蟒蛇

print(“Hello World!”)

这两个代码片段都提供相同的输出,但是,如果您是初学者,那么即使您完全理解了Python代码,也可能会理解C ++代码,这可能会让您感到恐惧。 这就是Python的魔力!

最终裁决

尽管我们并不认为这两种语言中的任何一种都是“更好”的语言,但无可否认,Python易于学习。 但是,回到流行指数,我们一定不能忘记,流行意味着相关。

如果TIOBE有任何优势,而Python是目前最受欢迎的语言之一,那么业界很可能很快就会采用它。 这使python成为一种安全的语言。 此外,如果您打算学习机器学习,数据科学或人工智能,那么Python是最适合的语言。 绝对的赢家,对初学者来说是最安全的。

至于不确定的灵魂,请查看Cython – Python的力量与C ++的结合。 好玩吗?

资料来源:

https://www.python.org/dev/peps/pep-0020/

https://www.tiobe.com/tiobe-index/

https://spectrum.ieee.org/at-work/innovation/the-2018-top-programming-languages

https://www.quora.com/What-are-the-advantages-of-Python-over-C++

From: https://hackernoon.com/python-vs-c-what-should-a-beginner-choose-y915e3zh7

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值