Python 是一个美丽的语言,可以激发用户对它的爱。所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python.
Python有很多吸引程序员的功能 ,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的支持,可以执行各种任务的扩展。
高效的Python
在这篇文章,我想强调一些 Python 可以节约时间并最大限度地提高生产力的方面。在做准备时,我咨询了几个 Pythonists,他们最节省时间的技巧是什么?答案在这里…
1. 不使用分号
使用分号在 Python 中是可选的,对比其他面向对象语言,你不需要在每一条语句后面使用分号。
这看起来很简单,似乎也节省不了多少时间;但一旦你的代码量扩展到数千号,这些分号就变得分心且没有必要键入。
2. 找一个称手的代码编辑器
选择一个称手的代码编辑器可以节省大量的时间。面对这么多代码编辑器,很多新手都会感觉很迷茫。
习惯一个编辑器再使用其他编辑器会觉得很混乱,所以选一个称手的是一个好的起点。不管你选择哪一个,要实时支持 flake8 和 PEP8。
关于编辑器选择指南,请参考文章 Which Code Editors Do Pythonists Use?
3. 遵循 Python 代码规范
遵循 Python 代码规范可以提升代码的可读性,从而节省评审代码的时间。(Python 的设计哲学 强调代码的可读性。)
4. 使用 help() 函数
Python 的 help() 是随手可用的内置函数可以节约很多时间,比如查找其他函数的解释。你可以在解释器终端直接运行该函数。
Python 文档有更多该函数的用法。
5. 使用库
Python 有大量的库可以让你不必每次都重复造轮子。
比如,你可以从 PyPI(Python包索引)选择大量可用的包,这是一个软件仓库。
Scikit-image 是一个很好例子,它使图像处理任务如模糊,增强对比度,缩放只需要一些函数调用就可以完成。
6. 使用Cookiecutter
Cookiecutter 是一命令行工具,可以帮助你从工程模板创建 Python 工程,这可以节省大量的时间。
7. 严格的注释
养成写注释的好习惯,可以节省你和其他人的时间,尤其是作调试跟踪。(是的我们听到很多,但似乎很多程序员还是需要提醒)。
注释在团队合作是非常关键,尤其是一个做了大量变更。
8. 经常测试
尝试测试你程序中的每一个组件。听起来好像有点费时,但长时间运行可以节省大量时间,帮助你发现隐藏的 bug,让你对代码更放心,还强制你理解自己的每一片代码在真实情况下是如何地运行。
REPL 是一个 read-eval-print loop,一个常用的代码测试工具,很多 Pythonists 使用它。
9. 专注和专业
Pythonists 都建议要有一个专注领域和专长。你可以使用 Python 做很多事情,从编写网页摄像到处理计算和算法。
已经有大量的库可以帮助完成这些任务,如 SimpleCV,计算机视觉处理;Biopython,是一个生物计算库; SymPy,是一个数学符号计算库。
深入类似这些的领域,并掌握一个特定的框架,帮助你在更深的层次学习 Python,掌握一个特定的代码风格(在第三部分已经提到),处理特定类型的问题。
10. 每天编码
当你养成了每天写 python 代码,使用 python 解决问题的习惯,你就会开始用 python 思考,可以这么说,这将最终会帮助你更快的解决问题。
总结
在这边简短的文章中,我已经列举了主要的几个我从和 python 开发者的对话收集来的 tips,下面的是我能够添加进去的其他的 tips.
参与 python 的活动和集会
保证参加你能够参加到的每场活动和集会。他们有益于分享经验,最佳实践,工具和其他有趣的话题。
这可能表面上不是一种省事的策略,但是通过建议,提示,破解来学习其他人的经验是另一种避免重复造轮子的方法。
每年一次的 PyConf 是一个知晓活动的好地方。
纸上思考
纸上思考 —— 在直接深入代码之前这样做 —— 将给你进行修改的灵活性。直接就去写代码会强迫你从一开始就得去考虑实现的细节, 这在启动项目时常常不是对你的时间的最佳利用方式。纸上思考这种解放注意力的方式对于头脑风暴和问题的解决都很有好处!
掌握基础知识
最后这一条看似很明显,但一定要投入时间来学习 Python 的基础知识. 这样最终会为你节省很多的时间,因为对更加复杂的主题,你会有更好的准备.
一些好书可以对此有所帮助,它们包括:
通过阅读博客和文章,保持有关信息的新鲜度也很重要。可以跟进的一个很棒博客是 The Mouse Vs. The Python.