1.对序列进行分组的函数(摘自web.py源码utils.py文件中)123456789101112131415161718192021def group(seq, size): """ Returns an iterator over a series of lists of length size from iterable. >>> list(group([1,2,3,4], 2)) [[1, 2], [3, 4]] >>> list(group([1,2,3,4,5], 2)) [[1, 2], [3, 4], [5]] """ def take(seq, n): for i in xrange(n): yield seq.next() #当seq迭代到最后一个元素直到没有时,抛出StopIteration被外层的list()捕获 if not hasattr(seq, 'next'): seq = iter(seq) while True: inger=take(seq, size) x = list(inger) if x: yield x else: break