Python编码中,有些‘雕虫小技’,知道吗?
一、列表
1.01:列表清空
a = [x for x in xrange(100000)]
笨办法>>
cnt = 100000
while cnt:
a.pop()
cnt -= 1
小技巧>>
a[:] = []
点评>>
效率呈线性显著提升。
1.02:列表中元素去重复
a = [0]*5 + [1]*3 + [2]*2
笨办法>>
dupa = []
for each in a:
if dupa.count(each) == 0:
dupa.append(each)
a = dupa
小技巧>>
a = list(set(a))
点评>>
效率呈线性显著提升。
二、格式化
2.01:次序占位混合命名占位
a = {'name': 'hualingson', 'age': 'unknown', 'sex': 'male'}
template = '\n'.join(map(lambda x: '%s=%%(%s)s' % (x, x), a.keys()))
printa = template % a
更新中……