怎么提升我们的代码能力?
小海同学
2023-12-14 15:50:21
0

同的语言有不同的特性,甚至有不同的原理,如果没有对语言基础有比较扎实得掌握,很容易犯一些低级错误

举个简单的例子好了,之前认识的一个实习生,有一次写了这么一段Python代码,大家不妨看看有什么问题。

image.png

不知道有多少同学能够看出问题在哪里,有一些同学可能会觉得是is not None的判断不对,应该写成not is None。其实问题不在这里,is not None才是标准判断的写法,只是这个问题当中的障眼法。真正的问题是在函数调用的部分,他把funcB写在了funcA的后面

funcB写在后面有什么问题?

大家试一下就会知道,这样写Python解释器是会报错的,我们必须要把funcB写在funcA的前面。因为Python不是编译型语言是解释型语言,它是由解释器逐行执行的。所以它会先执行funcA再执行funcB,当它执行funcA的时候会发现funcB这个函数没有出现过,所以会抛出错误。

当时这位同学debug了半天也没有找到问题所在,甚至还一度以为是Python版本的问题。这其实不是他代码能力不行,而是对语言基础掌握不够扎实。

类似的例子非常多,因为每一门语言往往拥有大量自己的特性,如果我们对某一门的语言只是浅尝辄止,那么写出来的代码一定是非常不规范的。比如Java如果不知道抽象类,Python不知道可变参数、装饰器的话,很多时候写出来的代码看起来就是不舒服的,因为没有做到最简,会给人一种费了很大劲实现了一个很基础的功能的感觉。

所以语言基础也是代码能力的基础,大家不要看不起这个,觉得只要会基本的语法会写就可以了。其实这是大错特错的,一些特性和语法糖可能用得少,但是关键时候用起来是可以大大简化代码量以及增加代码可读性的。

相关内容

热门资讯

百度网盘让10亿人在网上安了“... 百度网盘升级为一站式平台,注册用户超10亿在2024百度世界大会上,百度网盘宣布全面升级为集内容存储...
13年前微信安装包仅457KB... 微信正在测试一项新功能,旨在通过自动清理原图和原视频文件,减少微信占用的存储空间。这项“原图、原视频...
怎么提升我们的代码能力? 同的语言有不同的特性,甚至有不同的原理,如果没有对语言基础有比较扎实得掌握,很容易犯一些低级错误。举...
AI 引领代码编写新潮流 随着科技的不断进步,AI 在代码编写领域展现出了强大的崛起之势。近年来,人工智能技术日益成熟,其在编...
AI 代码编写的具体应用 (一)自动化代码生成AI 在自动化代码生成方面展现出强大的能力。通过自然语言处理(NLP)和机器学习...
分享部分Python代码片段 1、文件重复查找器有没有看过你的硬盘,想过,为什么只剩下 100MB 了? 重复文件,大概率是因为这...
Algen: ASDO——区块... ASDO的关键特性数据可用性预测切换:通过先进的预测模型,ASDO根据市场动态在不同数据处理方式之间...
百度的多模态路线是什么? 当ChatGPT掀起国内“百模大战”,百度率先交卷文心一言。Sora再掀视频生成风潮,却传出李彦宏内...
解决video标签在ios上无... 今天同事提了一个bug上来,说h5页面上的视频,在ios手机上播放不了。我就不信这个邪,我明明是按照...