On Oct 24, 2:28 am, Paul Hankin <[EMAIL PROTECTED]> wrote: > On Oct 23, 9:21 am, [EMAIL PROTECTED] wrote: > > > This one uses a dictionary to store prime values of each letter in the > > alphabet and for each line multiple the results of the characters > > (which is unique for each anagram) and add them to a dictionary for > > printing latter. > > > def anagram_finder(): > > primeAlpha = {'a':2, 'b':3, 'c':5, 'd':7,'e' : 11, 'f':13, 'g':17, > > 'h':19, \ > > 'i':23, 'j':29, 'k':31, 'l':37, 'm':41, 'n':43, 'o': > > 47, 'p':53, \ > > 'q':59, 'r':61, 's':67, 't':71, 'u':73, 'v':79, 'w': > > 83, 'x':89, \ > > 'y':97, 'z':101} > > ... > > A somewhat nicer start: compute primes (naively) rather than typing > out the dictionary. > > import string > from itertools import ifilter, count > > def anagram_finder(): > primes = ifilter(lambda p: all(p % k for k in xrange(2, p)), > count(2)) > primeAlpha = dict(zip(string.lowercase, primes)) > ... > > -- > Paul Hankin
Towards itertools, apart from the lib page on Python does anyone know of good tutorials of their usage...(beyond exploring myself it would be nice to see good examples for usage and effective combinations...) -- http://mail.python.org/mailman/listinfo/python-list