分享一下Python 开发者节省时间的10个方法


Posted in Python onOctober 02, 2015

Python 是一个美丽的语言,可以激发用户对它的爱。所以如果你试图加入程序员行列,或者你有点厌倦C++,Perl,Java 和其他语言,我推荐你尝试Python.

Python有很多吸引程序员的功能 ,它易学,面向对象,字节码编译,免费且开源。还有运行时检查。完整快速的支持,可以执行各种任务的扩展。

高效的Python

在这篇文章,我想强调一些 Python 可以节约时间并最大限度地提高生产力的方面。在做准备时,我咨询了几个 Pythonists,他们最节省时间的技巧是什么?答案在这里...

1. 不使用分号

使用分号在 Python 中是可选的,对比其他面向对象语言,你不需要在每一条语句后面使用分号。

这看起来很简单,似乎也节省不了多少时间;但一旦你的代码量扩展到数千号,这些分号就变得分心且没有必要键入。

2. 找一个称手的代码编辑器

选择一个称手的代码编辑器可以节省大量的时间。面对这么多代码编辑器,很多新手都会感觉很迷茫。

习惯一个编辑器再使用其他编辑器会觉得很混乱,所以选一个称手的是一个好的起点。不管你选择哪一个,要实时支持 flake8 和 PEP8。

关于编辑器选择指南,请参考文章 Which Code Editors Do Pythonists Use?

3. 遵循 Python 代码规范

分享一下Python 开发者节省时间的10个方法

遵循 Python 代码规范可以提升代码的可读性,从而节省评审代码的时间。(Python 的设计哲学 强调代码的可读性。)

4. 使用 help() 函数

Python 的 help() 是随手可用的内置函数可以节约很多时间,比如查找其他函数的解释。你可以在解释器终端直接运行该函数。

Python 文档有更多该函数的用法。

5. 使用库

Python 有大量的库可以让你不必每次都重复造轮子。

比如,你可以从 PyPI(Python包索引)选择大量可用的包,这是一个软件仓库。

分享一下Python 开发者节省时间的10个方法

Scikit-image 是一个很好例子,它使图像处理任务如模糊,增强对比度,缩放只需要一些函数调用就可以完成。

6. 使用Cookiecutter

分享一下Python 开发者节省时间的10个方法

Cookiecutter 是一命令行工具,可以帮助你从工程模板创建 Python 工程,这可以节省大量的时间。

7. 严格的注释

养成写注释的好习惯,可以节省你和其他人的时间,尤其是作调试跟踪。(是的我们听到很多,但似乎很多程序员还是需要提醒)。

分享一下Python 开发者节省时间的10个方法

注释在团队合作是非常关键,尤其是一个做了大量变更。

8. 经常测试

尝试测试你程序中的每一个组件。听起来好像有点费时,但长时间运行可以节省大量时间,帮助你发现隐藏的 bug,让你对代码更放心,还强制你理解自己的每一片代码在真实情况下是如何地运行。

REPL 是一个 read-eval-print loop,一个常用的代码测试工具,很多 Pythonists 使用它。

9. 专注和专业

分享一下Python 开发者节省时间的10个方法

Pythonists 都建议要有一个专注领域和专长。你可以使用 Python 做很多事情,从编写网页摄像到处理计算和算法。 

已经有大量的库可以帮助完成这些任务,如 SimpleCV,计算机视觉处理;Biopython,是一个生物计算库; SymPy,是一个数学符号计算库。

深入类似这些的领域,并掌握一个特定的框架,帮助你在更深的层次学习 Python,掌握一个特定的代码风格(在第三部分已经提到),处理特定类型的问题。

10. 每天编码

当你养成了每天写 python 代码,使用 python 解决问题的习惯,你就会开始用 python 思考,可以这么说,这将最终会帮助你更快的解决问题。

总结

在这边简短的文章中,我已经列举了主要的几个我从和 python 开发者的对话收集来的 tips,下面的是我能够添加进去的其他的 tips.

参与 python 的活动和集会

分享一下Python 开发者节省时间的10个方法

保证参加你能够参加到的每场活动和集会。他们有益于分享经验,最佳实践,工具和其他有趣的话题。

这可能表面上不是一种省事的策略,但是通过建议,提示,破解来学习其他人的经验是另一种避免重复造轮子的方法。

每年一次的 PyConf 是一个知晓活动的好地方。

纸上思考

纸上思考 —— 在直接深入代码之前这样做 —— 将给你进行修改的灵活性。直接就去写代码会强迫你从一开始就得去考虑实现的细节, 这在启动项目时常常不是对你的时间的最佳利用方式。纸上思考这种解放注意力的方式对于头脑风暴和问题的解决都很有好处!

掌握基础知识

最后这一条看似很明显,但一定要投入时间来学习 Python 的基础知识. 这样最终会为你节省很多的时间,因为对更加复杂的主题,你会有更好的准备.
一些好书可以对此有所帮助,它们包括:

《学习 Python》

《Python 编程入门》: 介绍Python计算机语言和计算机编程.

通过阅读博客和文章,保持有关信息的新鲜度也很重要。可以跟进的一个很棒博客是 The Mouse Vs. The Python.

原文地址:http://www.sitepoint.com/10-time-saving-tips-pythonists/
Python 相关文章推荐
Python实现递归遍历文件夹并删除文件
Apr 18 Python
python九九乘法表的实例
Sep 26 Python
Django中login_required装饰器的深入介绍
Nov 24 Python
Python3.6实现连接mysql或mariadb的方法分析
May 18 Python
Python对象与引用的介绍
Jan 24 Python
Python字符串匹配之6种方法的使用详解
Apr 08 Python
pyqt5实现按钮添加背景图片以及背景图片的切换方法
Jun 13 Python
使用python的pandas为你的股票绘制趋势图
Jun 26 Python
Python 实现输入任意多个数,并计算其平均值的例子
Jul 16 Python
基于python实现把图片转换成素描
Nov 13 Python
Python调用.NET库的方法步骤
Dec 27 Python
python Django 反向访问器的外键冲突解决
May 20 Python
Python监控主机是否存活并以邮件报警
Sep 22 #Python
Python二分查找详解
Sep 13 #Python
基python实现多线程网页爬虫
Sep 06 #Python
python杀死一个线程的方法
Sep 06 #Python
在Python的Flask框架中验证注册用户的Email的方法
Sep 02 #Python
Python实现身份证号码解析
Sep 01 #Python
实例Python处理XML文件的方法
Aug 31 #Python
You might like
基于php和mysql的简单的dao类实现crud操作功能
2014/01/27 PHP
php去除字符串中空字符的常用方法小结
2015/03/17 PHP
PHP正则表达式入门教程(推荐)
2016/05/18 PHP
jquery pagination插件实现无刷新分页代码
2009/10/13 Javascript
jquery插件制作简单示例说明
2012/02/03 Javascript
JavaScript合并两个数组并去除重复项的方法
2015/06/13 Javascript
JS实现选择TextArea内文本的方法
2015/08/03 Javascript
JS组件中bootstrap multiselect两大组件较量
2016/01/26 Javascript
onclick和onblur冲突问题的快速解决方法
2016/04/28 Javascript
Jquery组件easyUi实现选项卡切换示例
2016/08/23 Javascript
js实现百度登录框鼠标拖拽效果
2017/03/07 Javascript
bootstrap fileinput组件整合Springmvc上传图片到本地磁盘
2017/05/11 Javascript
javascript 封装Date日期类实例详解
2017/05/28 Javascript
vue mixins组件复用的几种方式(小结)
2017/09/06 Javascript
vue实现个人信息查看和密码修改功能
2018/05/06 Javascript
WebPack配置vue多页面的技巧
2018/05/15 Javascript
Vue Element 分组+多选+可搜索Select选择器实现示例
2018/07/23 Javascript
layui表格内容溢出的解决方法
2019/09/06 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
[43:26]完美世界DOTA2联赛PWL S2 Forest vs Rebirth 第二场 11.20
2020/11/23 DOTA
python实现单线程多任务非阻塞TCP服务端
2017/06/13 Python
python中cPickle类使用方法详解
2018/08/27 Python
MNIST数据集转化为二维图片的实现示例
2020/01/10 Python
Python代码需要缩进吗
2020/07/01 Python
Django-celery-beat动态添加周期性任务实现过程解析
2020/11/26 Python
CSS3 二级导航菜单的制作的示例
2018/04/02 HTML / CSS
CSS3 毛玻璃效果
2019/08/14 HTML / CSS
土耳其风格手工珠宝:Ottoman Hands
2019/07/26 全球购物
Piercing Pagoda官网:耳环、戒指、项链、手链等
2020/09/28 全球购物
武汉世纪畅想数字传播有限公司.NET笔试题
2014/07/22 面试题
保安公司服务承诺书
2014/05/28 职场文书
2015年大学生入党自荐书
2015/03/24 职场文书
自主招生自荐信怎么写
2015/03/24 职场文书
学生犯错保证书
2015/05/09 职场文书
创业计划书之个人工作室
2019/08/22 职场文书
详解Vue的options
2021/05/15 Vue.js