/usr/lib/python2.7/dist-packages/easydev/chunks.py is in python-easydev 0.9.35+dfsg-2.
This file is owned by root:root, with mode 0o644.
The actual contents of the file can be viewed below.
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 | # -*- python -*-
# -*- coding: utf-8 -*-
#
# This file is part of the easydev software
#
# Copyright (c) 2011-2017
#
# File author(s): Thomas Cokelaer <cokelaer@gmail.com>
#
# Distributed under the GPLv3 License.
# See accompanying file LICENSE.txt or copy at
# http://www.gnu.org/licenses/gpl-3.0.html
#
# Website: https://github.com/cokelaer/easydev
# Documentation: http://easydev-python.readthedocs.io
#
##############################################################################
#http://stackoverflow.com/questions/312443/how-do-you-split-a-list-into-evenly-sized-chunks-in-python
#
# Here's a generator that yields the chunks you want:
#
# def chunks(l, n):
# """Yield successive n-sized chunks from l."""
# for i in range(0, len(l), n):
# yield l[i:i+n]
#
#The issue here is that the chunks are not evenly sized chunks
#
__all__ = ['split_into_chunks']
try:
range = xrange # py2
except:
pass #py3
def split_into_chunks(items, maxchunks=10):
"""Split a list evenly into N chunks
.. doctest::
>>> from easydev import split_into_chunks
>>> data = [1,1,2,2,3,3]
>>> list(split_into_chunks(data, 3))
[[1, 2], [1, 3], [2, 3]]
"""
chunks = [[] for _ in range(maxchunks)]
for i, item in enumerate(items):
chunks[i % maxchunks].append(item)
return filter(None, chunks)
|