python与c语言哪个好:用途不同没有绝对优劣只看适配场景

python与c语言哪个好:用途不同没有绝对优劣只看适配场景

刚入门编程那会,所有人都在纠结python与c语言哪个好,我也跟着盲目纠结,固执的认为编程语言一定有强弱之分,选对一门最优的,就能覆盖所有编程场景,没必要花费精力兼顾两种语言。

那时候眼里,C语言晦涩难懂,Python简单万能。

大一初学编程,最先接触的就是C语言,对着黑漆漆的控制台反复敲写基础代码,一点点啃指针、内存地址、结构体这些抽象知识点,但凡标点符号、数据类型写错一处,整段程序就直接报错瘫痪,编译器弹出的报错信息密密麻麻,根本找不到问题根源。当时为了完成一个简易的成绩统计程序,光是手动分配内存、处理数据溢出、优化循环逻辑,就熬了三个晚自习,最后跑通的功能还特别基础。反观身边同学用Python,寥寥几行代码就能实现一模一样的统计功能,不用纠结底层细节,运行也稳定,那时候彻底认定C语言又笨又落后,Python才是新手最优解。

真正打破固有认知,是大二的嵌入式硬件实训。

那次实训任务是制作小型智能感应灯光设备,一开始图省事,直接用熟练的Python编写控制逻辑,满心以为能快速完成任务,结果实操的时候问题彻底的暴露。Python依靠解释器运行,执行效率偏低,没办法直接对接硬件底层指令,设备的感应响应足足慢了一秒多,完全达不到实训的精准要求。而且Python运行需要搭载各类依赖库,硬件设备的存储空间极小,根本承载不住这些冗余文件,哪怕反复删减优化代码,也解决不了适配问题,折腾好久才搞明白,高层级的脚本语言,在硬件底层开发里根本施展不开。

转头换成C语言重写代码后,所有难题瞬间消解。

C语言代码编译后体积极小,不需要多余的运行环境,能够直接操控硬件底层,指令执行零延迟,几十行精简代码,就完美实现了感应触发、亮度调节、延时关闭的全部功能,设备运行全程稳定无卡顿。这一刻才彻底推翻之前的偏见,原来从来不是语言有好坏,只是自己之前的使用场景太过单一,只会用表层体验判定语言优劣。

后续做数据分析、网络爬虫的课外项目,又能明显感受到Python的得天独厚。

如果硬用C语言去做数据抓取和数据清洗,光是搭建基础框架、处理复杂字符串、适配网页接口,就要耗费成倍的时间和精力,开发效率低到让人崩溃。Python自带海量成熟的第三方库,爬虫、数据分析、可视化的功能都有现成模板,原本两三天才能做完的数据分析任务,用Python半天就能高效收尾,便捷性和高效性是C语言比不了的。

关掉编辑器,桌面上并排躺着两个文件夹,一个存着C语言的硬件实训源码,一个是Python的数据分析脚本。

了解更多百科知识请访问 百科