def pairs(item_list):
 for (i, item1) in enumerate(item_list):
  for item2 in item_list[(i + 1):]:
   (yield (item1, item2))

def pairs ( item_list ) : for ( i , item1 ) in enumerate ( item_list ) : for item2 in item_list [ ( i + 1 ) : ] : ( yield ( item1 , item2 ) )
returns an iterator of all pairs of elements from item_list .