常说,见字如见人。那么程序员也同样如此,第一反应程序员的就是他的代码是否美观。毕竟代码不仅是要实现东西,更重要的是给领导看的,如果代码一踏糊涂,就是技术在过硬也就那样,作为领导者会认为你工作不严谨。就比如一笔好字,给人感觉是完全不同的,在面试的时候也是非常重要的,代码写的规范美观,HR会在无形之中给你加分的! 第 1 章 用 Pythonic 方式来思考第 5 条:了解切割序列的方法 1.不要写多余的代码:当 start 索引为 0,或 end 索引为序列长度时,应该将其省略。
3.对 list 赋值的时候,如果使用切片操作,就会把原列表中处在相关范围内的值替 换成新值,即便它们的长度不同也依然可以替换 第 8 条:不要使用两个以上的表达式的列表推导 列表推导支持多级循环,每一级循环也支持多项条件。超过两个表达式的列表推导是很难理解的,应该尽量避免。 可以使用两个条件、两个循环或 一个条件搭配一个循环。如果要写的代码比这还复杂,那就应该使用普通的 if 和 for 语句,并编写辅助函数。 第 9 条:用生成器表达式来改写数据量较大的列表推导 当输入的数据量较大时,列表推导可能会因为占用太多内存而出问题。为了解决这个问题,Python 提供了生成器表达式(generator expression),它是对列表 推导和生成器的一种泛化(generalization)。 把实现列表推导所用的那种写法放在一对圆括号中,就构成了生成器表达式。此时立刻返回一个迭代器,逐次调用内置的 next 函数,以这个迭代器为参数,输出一个值,做循环输出即可。 3.11 第 11 条:用 zip 函数同时遍历两个迭代器
第 12 条:不要在 for 和 while 循环后面写 else 模块 结果: 第 2 章 函数第 14 条:尽量用异常来表示特殊情况,而不要返回 None ![]() 第 17 条:在参数上面迭代时,要多加小心 迭代器只能欸遍历一次,如果多次遍历则会出现意想不到的错误。 (列表可以被多次迭代)
![]() ![]() 第 20 条:用 None 和文档字符串来描述具有动态默认值的参数 如果参数的实际默认值是可变类型(mutable),那就一定要记得用 None 作为形式 上的默认值。(即形参值设为 None) ![]() ![]() 第 22 条:尽量用辅助类来维护程序的状态,而不要用字典和元组
![]() 第 25 条:用 super 初始化父类
3.总是应该使用内置的 super 函数来初始化父类。 谢谢阅读!你有从中学到东西嘛? ![]()
|
|
来自: flyk0tcfb46p9f > 《AI》