标签:return 风格 根据 编程规范 方法 lob 目的 效率 编程
可想而知,随着你的编码慢慢的变多,内容也会变得越来越多;所以,不用想的,规范化自己的编程以及软件开发目录这十分的重要;那么如何做这些东西了?我们作为初学者,目的就是为了遵循代码规范,这是最基本的,而且以后工作了,每个团队的规范还不一样,尽可能的与自己的团队保持一致,目前初学者按照官方要求即可。只要在以后多观察代码风格,多看几次就可以学会了。
注释不止为了自己看清楚自己的代码,而且还是为以后的开发人员做准备的,其实一段时间后,当程序作出一定的修改后或者以后改正某个bug的时候,可能未来的我们都会忘记相关的细节,所以此时的注释相当的重要。
每条注释是以(#)开始,一直到该行末尾结束,我们可以在注释中放任何东西,因为python会无视它的存在。为了更好的注释,我们给出以后的几个规范:
(1)假设编程读者的水平与你一样(不要去解释什么是字符串,什么是int类型等)
(2)不要去注释那些毫无意义的东西
count = count +1 # add one to count
(3)很多程序员会在代码上写上写上一些以“TODO”或者“FIXME”开始的注释,目的是为了处理或清除一些未完成的任务
(4)如果你在编写某段程序的时候绞尽脑汁的思考,应该编写注释,以后别人在思考你这段代码的时候就不比较绞尽脑汁的思考这个地方。尤其重要的地方是,如果你在开发程序或者编写某个函数时需要使用要点来描述,尽可能的描述详细一点。在开 发工作结束的时候,你可以直接将要点全部保留下来做注释。
(5)同样,如果某个bug很难查明,或者其修改方法比较复杂,那么你就需要对其进行注释对其进行解释。如果不这么做,那么其他负责这部分的程序员就可能认为没有必要这么麻烦,修改回原来的模样,从而使你的心血付诸东流。
(6)如果我们需要大量的注解去解释某部分代码,那么,就需要我们自己去整理这部分代码。 比如说,如果我们需要对一个函数的15个列表进行注解,那么我们就应该将函数拆分成更小的代码块,每个注释只处理几个列表。
(7)过时的注释还不如不注释。因此修改某段代码后,一定要检查相关的注释,并及时的更新自己的注释,以便于准确适当的描述代码的功能。
(8)注释不是越多越好,弄得全篇都是注释,却很少看见代码,这样就曲解了注释意思了
所以说,一定要养成良好的注释代码的习惯,边写代码边注释,及时的记录下来你的思路,举个例子,代码是鱼,注释就是水,有了正确的注释,鱼才能更好的生存。还有就是多提高自己对代码的解释能力,用精炼的语言表达出代码的核心价值所在,那么你写的代码就是成功的。
下面举个简单的例子:
def find_two_smallest(L): ‘‘‘Return a tuple of the indices of the two smallest values in list L‘‘‘ smallest = min(L) min1 = L.index(smallest) L.remove(smallest) next_smallest = min(L) min2 = L.index(next_smallest) L.insert(min1,smallest) #为了获取第二个最小值在原始列表中的索引,我们还需要根据实际情况给min2加1 if min1<=min2: min2+=1 return(min1,min2)
比如,python中有一行声明python编码格式的单行注解,这里指定的文件的编码为utf-8。这行特殊注解只能放在文件的第一行或者开头。
#_*_coding:utf-8_*_
还有一种是说明脚本语言是python的,是要用/usr/bin下面的程序(工具)python,这个解释器,来解释python脚本,来运行python脚本的。
#!/usr/bin/python
名字不能乱起,如果大家都是各自的想法,那么谁也看不懂谁的东西。因此,这里说一下变量命名的规范以及注意事项。
1.变量定义规则
2.变量规范用名注意事项
3.总体命名规则
总体原则,避免不必要的空格
try: value = collection[key] except KeyError: return key_not_found(key) else: return handle_value(value) 要优于 try: # Too broad! return handle_value(collection[key]) except KeyError: # Will also catch KeyError raised by handle_value() return key_not_found(key)
Yes: if foo.startswith(‘bar‘): 优于 No: if foo[:3] == ‘bar’
使用isinstance()比较对象类型:
Yes: if isinstance(obj, int): 优于 No: if type(obj) is type(1)
Yes: if not seq: if seq: 优于 No: if len(seq) if not len(seq)
标签:return 风格 根据 编程规范 方法 lob 目的 效率 编程
原文地址:https://www.cnblogs.com/liuxinkai94/p/10795107.html