Home  >  Article  >  Backend Development  >  Python 编程,应该养成哪些好的习惯?

Python 编程,应该养成哪些好的习惯?

WBOY
WBOYOriginal
2016-06-06 16:11:051036browse

我以为编程习惯很重要的,一开始就养成这些习惯,不仅可以提高编程速度,还可以减少 bug 出现的概率。希望各位分享好的编程习惯。

回复内容:

有人提到要严格遵照PEP 8规定的Python Coding Style来写,要多读英文文档,多看看一些优秀的库(比如requests)

其实这一切的一切,用Jetbrain的 PyCharm IDE就好啦:
Python IDE & Django IDE for Web developers : JetBrains PyCharm

- 免费,全平台(Win、MacOS、Linux),为Python带来完整的IDE体验

- 体验不输同门的IntelliJ (IntelliJ是什么水平呢?对我来说,IntelliJ在写Java上面的体验是吊打Eclipse的)

- 自动提示Coding Style:函数之间空两行,4空格缩进,函数名称写法 etc,统统会提示你!比某个PEP8检查script来的更加方便

- 可以随意点击任何函数、某个lib,对所有python内置lib、和已经安装了的第三方lib都有效,可以迅速打开该第三方函数的实现,方便查看其文档&实现细节(这就不用手动去python lib目录下一个个去翻了,对于学习优秀的第三方lib特别有帮助)

- 包括有人提到的Unit Test,PyCharm也提供one-click生成test case

总之,我推荐刚入门Python的大家,尽早的使用PyCharm来开发,那感觉就如同一个经验丰富的大师,手把手盯着你编程 ^^ 1. 养成看英文文档、材料的习惯
2. 看完 requests 库作者写的这份 Python Guide: The Hitchhiker’s Guide to Python!
3. 按照这上面的做 虚拟环境、解包、列表推导、迭代器、生成器、装饰器、抽象基类、静态方法、类方法、 不光是上面一些大牛们说的那些基本的缩进,自动化测试之类的
更重要的还是写出Python的特色来。

PyConChina2014 杭州场 @施远敏 分享的主题
idiomatic.py —— 如何写一个具有高B格的Python代码

原文(墙外):
docs.google.com/present

译文(个人翻译):
转载: idiomatic.py

都是一些小的细节, 但是正是这些细节体现了Py的与众不同 > 每个公共函数有unit tests
> 公共函数和类的名称准确概括其目的
> 写docstring
> 不写代码内注释(inline comment)
> release代码里不用print
> 每个函数不超过10行(不包括docstring) 谨慎使用鸭子类型,对于作为函数参数传进来的对象(尤其是自定义的类的实例),使用之前最好用type/isinstance方法做一下类型检查,或者Python3的 Function Annotations 功能做一下注释。

这样既增加了代码的可读性,也使得IDE(比如Pycharm)更容易理解你的代码,提供更准确的错误提示,代码跳转和自动补全。 1,随时开着一个解释器待用。忘了api直接dir+help,忘了用法直接在解释器里面进行试验。
充分利用python强大的自省能力,不仅能让初学者尽快入门,对日后使用也很有帮助。

2,import大法好。遇到用python处理某一类比较通用且复杂的问题,先去搜一下有没有现成的轮子:安装包自带的有很多,github上也活跃着很多项目。

讲的虽然都不是具体的编程习惯,但都是我的切身体会。上面几点都是我喜欢python的原因。(^_^) (¬_¬)There should be one-- and preferably only one --obvious way to do it.
所以
良好习惯就是,在StackOverflow上搜索遇到的问题,然后把被采纳的答案背下来,以后遇到这种问题都用它。 最好先看完PEP8 code style再开始编码。不然老员工code reviews的时候看到新人奇葩的风格就想撕逼了哒 过来人告诉你,养成写测试代码的习惯绝对是一个聪明的选择。
Statement:
The content of this article is voluntarily contributed by netizens, and the copyright belongs to the original author. This site does not assume corresponding legal responsibility. If you find any content suspected of plagiarism or infringement, please contact admin@php.cn