Guest User

Untitled

a guest
Apr 19th, 2018
83
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.07 KB | None | 0 0
  1. for chunk in chunker(range(25), 4):
  2. print(list(chunk))
  3.  
  4. [0, 1, 2, 3]
  5. [4, 5, 6, 7]
  6. [8, 9, 10, 11]
  7. [12, 13, 14, 15]
  8. [16, 17, 18, 19]
  9. [20, 21, 22, 23]
  10. [24]
  11.  
  12. def chunker(iterable, size):
  13. num = size
  14. for item in iterable:
  15. yield item,size
  16.  
  17.  
  18. for chunk in chunker(range(25), 4):
  19. print(list(chunk))
  20.  
  21. [0, 4]
  22. [1, 4]
  23. [2, 4]
  24. [3, 4]
  25. [4, 4]
  26. [5, 4]
  27. [6, 4]
  28. [7, 4]
  29. [8, 4]
  30. [9, 4]
  31. [10, 4]
  32. [11, 4]
  33. [12, 4]
  34. [13, 4]
  35. [14, 4]
  36. [15, 4]
  37. [16, 4]
  38. [17, 4]
  39. [18, 4]
  40. [19, 4]
  41. [20, 4]
  42. [21, 4]
  43. [22, 4]
  44. [23, 4]
  45. [24, 4]
  46.  
  47. def chunker(iterable, size):
  48. for i in range(0, len(iterable), size): # percorremos o nosso range com um step de 4 neste caso, [0, 4, 8, 12, 16, 20, 24]
  49. yield iterable[i:i+size] # ficamos com os valores do nosso iteravel contidos no intervalo entre i e i+size, na primeira volta entre 0 e 0+4 ([0,1,2,3]) na segunda entre 4 e 4+4 ([4, 5, 6, 7]), etc...
  50.  
  51. c = chunker(list(range(25)), 4)
  52. print(list(c)) # [[0, 1, 2, 3], [4, 5, 6, 7], [8, 9, 10, 11], [12, 13, 14, 15], [16, 17, 18, 19], [20, 21, 22, 23], [24]]
  53.  
  54. for i in chunker(list(range(25)), 4):
  55. print(i)
Add Comment
Please, Sign In to add comment