首页 诗词 字典 板报 句子 名言 友答 励志 学校 网站地图
当前位置: 首页 > 教程频道 > 开发语言 > perl python >

Python实用技巧-变为Pythoner必经之路

2012-11-05 
Python实用技巧-成为Pythoner必经之路前言本文主要记录 Python 中一些常用技巧,所描述的是告诉你怎么写才

Python实用技巧-成为Pythoner必经之路
前言
    本文主要记录 Python 中一些常用技巧,所描述的是告诉你怎么写才是更好?  如果你并不熟悉Python语法,希望你能在下面代码片段中看到Python的简单、优雅; 如果你象我这样,对 Python 有兴趣或并正在学习,我相信下面的技巧并不会让你失望; 如果你已经是一名 Pythoner ,那么很乐于你分享你的经验和技巧。

目录
Python 禅道代码风格: 提高可读性PEP 8: Python 代码风格指南空格(行)使用 (1)空格(行)使用 (2)命名较长代码行较长字符串复合语句字符串文档 & 注释交换变量更多关于 Tuples关于 "_"创建String: 从列表中创建尽可能的使用字典中的 get 函数字典中的 setdefault 函数 (1)字典中的 setdefault 函数 (2)defaultdict创建 & 分割字典判断 True 值True 值索引 & 项 (1)索引 & 项 (2): enumerate默认参数值列表理解生成器表达式 (1)生成器表达式 (2)排序使用 DSU *排序使用 Key 排序生成器生成器示例从文件中读取数据行try/except 示例导入(Importing)模块 & 脚本模块结构命令行处理简单比复杂好不要重新发明轮子

章节

Python 禅道
这是Python的指导原则,但有不同诠释。

如果您使用的一种编程语言是以小品喜剧艺术团命名的,你最好有幽默感。

美丽优于丑陋。
明确优于含蓄。
简单比复杂好。
平倘优于嵌套。
稀疏比密集更好。
特殊情况不能特殊到打破规则。
错误不应该默默传递。
......


代码风格: 提高可读性
Programs must be written for people to read, and only incidentally for machines to execute.
     —Abelson & Sussman, Structure and Interpretation of Computer Programs


PEP 8: Python 代码风格指南
值得阅读:
http://www.python.org/dev/peps/pep-0008/


空格(行)使用 (1)
使用 4 个空格缩进。不要使用制表符。不要将制表符和空格混合使用。IDEL和Emacs的Python的都支持 spaces模式。每个函数之间应该有一个空行。每一个 Class 之间应该有两个空行。

空格(行)使用 (2)
在使用 字典(dict), 列表(list), 元组(tuple), 参数(argument)列表时, 应在 "," 前添加一个空格, 并且使用字典(dict)时,在 ":" 号后添加空格,而不是在前面添加。在括号之前或参数之前不添加空格。在文档注释中前后应该没有空格。


简单比复杂好
Debugging is twice as hard as writing the code in the first place. Therefore, if you write the code as cleverly as possible, you are, by definition, not smart enough to debug it.
     —Brian W. Kernighan



不要重新发明轮子
在写任何代码之前,
? ? ? ?
检查python 标准库.检查Python的包索引 (the "Cheese Shop"):           http://cheeseshop.python.org/pypiSearch the web. Google is your friend.
原文:[urlhttp://python.net/~goodger/projects/pycon/2007/idiomatic/handout.html][url]
  3 楼 fire_wang 2011-06-17   谢谢,很多不知道! 4 楼 caiceclb 2011-06-17   要得。。。。。。 5 楼 liupopo 2011-06-19   呵呵,挺不错的啊,打印出来放在手边,经常看一看身强体健。 6 楼 ylsn1982 2011-06-20   正在学python,昨天开始的,3.0 7 楼 air_fans 2011-06-20   好文,支持lz 8 楼 tonyseek 2011-06-20   这不是 PEP 8 么? 9 楼 denger 2011-06-20   tonyseek 写道这不是 PEP 8 么?
不完全是,不过偶有时间再把 PEP 8 翻译一下,再补充进来~ 10 楼 flyingzl 2011-06-21   好文,又温习一遍,哈哈。。 11 楼 shanga 2011-06-21   还有默认值:
default = default or '' 12 楼 hw425 2011-06-24   刚开始雪py,请问有什么好用又免费的ide吗 13 楼 shanga 2011-06-25   hw425 写道刚开始雪py,请问有什么好用又免费的ide吗
nodepad++,editplus

热点排行