如何写出优雅的Python
Looping over a range of numbers
Bad:
for i in [0,1,2,3,4,5]:
print i**2
Good:
for i in range(6):
print i**2
Looping over a collection:
Bad:
colors = [ 'red','green','blue','yellow'] for i in range(len(colors)):
print colors[i]
Good:
for i in colors:
print colors[i]
Looping backwards
Bad:
colors = ['red','green','blue','yellow'] for i in range(len(colors)-1,-1,-1):
print colors(i)
Good:
colors = ['red','green','blue','yellow'] for color in reversed(colors):
print color
Looping over a collection and indicies
Bad:
colors = ['red','green','blue','yellow'] for i in range(len(colors)):
print i, '-->', colors[i]
Good:
colors = ['red','green','blue','yellow'] for i,color in enmerate(colors):
print i, '-->', colors[i]
Looping over two collections
Bad:
names = ['raymond','rachel','mattew']
colors = ['red','green','blue','yellow'] n = min(len(names),len(colors))
for i in range(n):
print names[i],'-->',colors[i]
Good:
names = ['raymond','rachel','mattew']
colors = ['red','green','blue','yellow'] for name,color in zip(names,colors):
print name,'-->',color
Even beeter.(izip 依次处理,zip是全部读入后处理,如果在中间中断的话,izip不需要读入所有内容)
from itertools import izip
names = ['raymond','rachel','mattew']
colors = ['red','green','blue','yellow'] for name,color in izip(names,colors):
print name,'-->',color
如何写出优雅的Python的更多相关文章
- 如何写出优雅的Python代码?
有时候你会看到很Cool的Python代码,你惊讶于它的简洁,它的优雅,你不由自主地赞叹:竟然还能这样写.其实,这些优雅的代码都要归功于Python的特性,只要你能掌握这些Pythonic的技巧,你一 ...
- 如何写出优雅的Python之设置class缺省值
今天有个需求时需要为某个类设置缺省值 最开始的代码如下: Class myClass def __init__(self,datalen=None,times=None): if datalen == ...
- 如何写出优雅的Python(二)
Print sorted list: colors=['red','green','blue','yellow'] for color in sorted(colors): print color f ...
- 如何写出优雅的CSS代码 ?(转)
对于同样的项目或者是一个网页,尽管最终每个前端开发工程师都可以实现相同的效果,但是他们所写的代码一定是不同的.有的优雅,看起来清晰易懂,代码具有可拓展性,这样的代码有利于团队合作和后期的维护:而有的混 ...
- 如何写出优雅的css代码 ?
如何写出优雅的css代码 ? 对于同样的项目或者是一个网页,尽管最终每个前端开发工程师都可以实现相同的效果,但是他们所写的代码一定是不同的.有的优雅,看起来清晰易懂,代码具有可拓展性,这样的代码有利于 ...
- 如何写出优雅的JavaScript代码 ? && 注释
如何写出优雅的JavaScript代码 ? 之前总结过一篇<如何写出优雅的css代码?>, 但是前一段时间发现自己的js代码写的真的很任性,没有任何的优雅可言,于是这里总结以下写js时应当 ...
- 【原创】怎样才能写出优雅的 Java 代码?这篇文章告诉你答案!
本文已经收录自 JavaGuide (59k+ Star):[Java学习+面试指南] 一份涵盖大部分Java程序员所需要掌握的核心知识. 本文比较简短,基本就是推荐一些对于写好代码非常有用的文章或者 ...
- 如何写出优雅的 Golang 代码
原文: https://draveness.me/golang-101.html Go 语言是一门简单.易学的编程语言,对于有编程背景的工程师来说,学习 Go 语言并写出能够运行的代码并不是一件困难的 ...
- 深入了解Promise对象,写出优雅的回调代码,告别回调地狱
深入浅出了解Promise 引言 正文 一.Promise简介 二.Promise的三种状态 三.函数then( ) 四.函数catch( ) 五.函数finally( ) 六.函数all( ) 七. ...
随机推荐
- Web开发流程
知乎上关于Web开发流程豪情给予的回答 web前端开发流程是什么?进行操作会用到哪些便捷的小工具?是先用模板做好,然后在基础上改吗??正常大家说的改框架是不是指的用模板做的网站原文件?前端开发做的文件 ...
- vim基本命令
vim基本命令 1.vim#在命令行中输入vim,进入vim编辑器2.i#按一下i键,下端显示 --INSERT--#插入命令,在vim中可能任意字符都有作用3.Esc#退出i(插入)命令进行 ...
- shudupoj2676
#include<stdio.h> int num,v[100][2],map[10][10]; bool judge(int x,int y,int k) { int i,j,it,j ...
- IntelliJ IDEA中如何显示和关闭----工具栏,目录栏,(转)
工具栏:就是上面有个好多的快捷按钮的那个栏,比如撤销,上传,下载设置,扳手按钮,等等. 目录栏,就是刚刚装的时候,这个会显示,但是不知道怎么关闭,但是这个又没什么用. 如图: 就是对应的几个按钮,自己 ...
- iOS相关笔记
#协议[1] [2] @property (nonatomic, assign) id<EveryFrameDelegate> delegate; 表明,这个delegate是一个需要实现 ...
- VS2013 GIT 克隆远程仓库
1.配置本地GIT 工具->选项->源代码管理,选择GIT 2.打开团队资源管理器,找到GIT克隆选项 3.单击克隆,在输入框内输入远程仓库地址,然后单击克隆即可 GIT 插件配置:参考 ...
- Karma+Jasmine实现自动化单元测试
1.Karma介绍 Karma是Testacular的新名字,在2012年google开源了Testacular,2013年Testacular改名为Karma.Karma是一个让人感到非常神秘的名字 ...
- iOS 面试题(五):weak 的内部实现原理 --转自唐巧
问题 weak 变量在引用计数为0时,会被自动设置成 nil,这个特性是如何实现的? 答案 在 Friday QA 上,有一期专门介绍 weak 的实现原理.https://mikeash.com/p ...
- oracle or语句的坑
SELECT SUM(tjo.pay_amount) FROM tb_jf_order tjo,tb_jf_gateway_trade_log tjg WHERE tjo.order_id = tjg ...
- marathon新建应用映射端口限制
映射端口范围不能使用:1~1024 (除 80 443), 5000~5100, 6000~6999, 10000~20000, 31000~32000 映射端口可能与 Chrome 冲突: 6665 ...