目錄
Python 编程,应该养成哪些好的习惯?
Jun 06, 2016 pm 04:11 PM
bug
我以为编程习惯很重要的,一开始就养成这些习惯,不仅可以提高编程速度,还可以减少 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代码
原文(墙外):
https://docs.google.com/presentation/d/1Mer-SFLtELLtmS_QxLWbW1aEDX997JSN6eD3mCyV81k/edit#slide=id.g475844c86_0333
译文(个人翻译):
转载: 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的时候看到新人奇葩的风格就想撕逼了哒 过来人告诉你,养成写测试代码的习惯绝对是一个聪明的选择。
本網站聲明
本文內容由網友自願投稿,版權歸原作者所有。本站不承擔相應的法律責任。如發現涉嫌抄襲或侵權的內容,請聯絡admin@php.cn

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章
擊敗分裂小說需要多長時間?
3 週前
By DDD
倉庫:如何復興隊友
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island冒險:如何獲得巨型種子
3 週前
By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O.能量晶體解釋及其做什麼(黃色晶體)
1 週前
By 尊渡假赌尊渡假赌尊渡假赌
公眾號網頁更新緩存難題:如何避免版本更新後舊緩存影響用戶體驗?
3 週前
By 王林

熱門文章標籤

記事本++7.3.1
好用且免費的程式碼編輯器

SublimeText3漢化版
中文版,非常好用

禪工作室 13.0.1
強大的PHP整合開發環境

Dreamweaver CS6
視覺化網頁開發工具

SublimeText3 Mac版
神級程式碼編輯軟體(SublimeText3)