我应该学 C++ 还是 Python?

很多刚接触编程的朋友都会问:我该学 C++ 还是 Python?

如果把这两种语言比作汽车,C++ 就像一辆老式保时捷,手动挡、手动摇窗器、硬悬挂——跑得快,但开起来并不舒服;Python 则像一辆全自动的家用轿车,带杯架、座椅加热、自动泊车——开起来轻松惬意。

所以问题的关键在于:你喜欢编程的哪一点?

  • 如果你是那种喜欢钻研细节的“汽车发烧友”,愿意花几个小时钻到车底下拆零件,熟悉每颗螺丝的名字,乐于把发动机的最后一匹马力都榨出来,也不介意为了超车而提前做大量准备,那么 C++ 很适合你。
  • 如果你更在意的是车子能不能舒舒服服地带你去目的地,至于引擎如何运转、底盘如何设计并不重要,那么 Python 会更合适。

简单来说:

  • C++ 是写给那些热爱编程本身的人。
  • Python 是写给那些想用编程实现东西的人。

一些补充

编程是个很宽的领域,不同背景的人会有完全不同的看法。写游戏、做硬件驱动的人和我这种“用代码做遥感处理”的人,需求完全不同。
有人建议每年学一门新的语言。对初学者来说,如果只能选第一门语言,我还是推荐从 Python 开始。因为不用管内存分配、指针、模板这些底层的麻烦事,可以直接专注在算法和逻辑上,体验会更好,也不容易因为觉得太难而放弃。

等到以后真的需要极致性能,或者要写和硬件结合的程序,再学 C++ 也不迟。到那个时候,你已经有编程的整体经验,学习曲线也不会那么陡峭。


最后的提醒

我最初回答的问题是“我应该学习 C++ 还是 Python?”,而不是“Python 和 C++ 哪个更好?”。这两句话的差别很大。前者是个人选择,后者就变成了无意义的争论。

学哪种语言,不存在绝对的“更好”,关键还是看你自己想要什么。