编程规范和习惯
几乎所有会写代码的人都认为,编程和写诗一样,是一门艺术。
Source: Dude trust me.
其实,能够写出实现需求的程序,只是编程能力中的一小块。很多时候更重要的事情,是代码本身。
毕竟程序是给人看的,我们要尽可能地让自己的代码简介明了,前后一致,而且,更重要的是,改起来方便。
我们以下面两段程序为例来分析。
程序一
a="小王"
b=69
print(a+"的得分是: " +b)
a ="小红"
b= 80
print (a +"的得分是: " + b)
a="小明"
b = 73
print (a+ "的得分是: "+ b)
程序二
def printScore(student_name, student_score):
print(student_name + "的得分是: " + str(student_score))
for n, s in [("小王", 69), ("小红", 80), ("小明", 73)]:
printScore(n, s)
同样是打印三个学生的成绩,我们希望你书写第二种程序。我们会从三个角度分析。
变量的命名
程序一
中,我们看到了两个变量 a
和 b
。在稍微长一点的程序里,这样的变量就会让人疑惑:这个变量是干啥的?
于是,这个人要通过理解代码来猜测变量的用途,而这是相当费事的过程,在一些情况下,甚至是几乎不可能做到的。
事实上,很多人会故意把变量名都变成 a
,b
之类没有意义的东西,以防止自己的程序被人理解,然后被抄袭或者盗用。然而,这也不需要你手动这样做,有很多 代码混淆
工具可以自动做到这件事。
所以,只要你在写程序,请尽量取好变量名,让人一看就知道它是干啥的。就像 程序二
那样,大家一看就知道 student_name
和 student_score
是啥意思。
格式的问题
每个人可能有不同的 style
,但务必做到前后一致。比如,你如果你习惯在等号、加号等符号两边加一个空格(笔者建议这么做),那么请在你的程序里从头到尾都这么做。
易于更改的问题
很少有程序,一经写出,就再也不用修改。比如上述程序,一个很可能的修改是,我们需要 print
第四个第五个学生。
所以,我们在写的时候,就要让程序尽量容易修改。