Skip to content

Instantly share code, notes, and snippets.

@hanks
Last active August 29, 2015 14:01
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save hanks/e3b1bf128209c868d910 to your computer and use it in GitHub Desktop.
Save hanks/e3b1bf128209c868d910 to your computer and use it in GitHub Desktop.
def grouper(group_membre_number, the_list, default=None):
return map(default, *(iter(the_list), ) * group_membre_number)
def build_dict(group_list):
result = {}
for group in group_list:
temp = iter(group[1:])
result[group[0]] = dict(zip(temp, temp))
return result
if __name__ == '__main__':
l = range(1, 21)
group_member_number = 5
group_list = grouper(group_member_number, l)
print group_list
result = build_dict(group_list)
print result
>>> python v2ex_group.py
[(1, 2, 3, 4, 5), (6, 7, 8, 9, 10), (11, 12, 13, 14, 15), (16, 17, 18, 19, 20)]
{16: {17: 18, 19: 20}, 1: {2: 3, 4: 5}, 11: {12: 13, 14: 15}, 6: {9: 10, 7: 8}}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment