Revision: 48307
Initial Code
Initial URL
Initial Description
Initial Title
Initial Tags
Initial Language
at June 28, 2011 22:36 by themoosemind
Initial Code
import re def bacon2text(bacon): """ This function converts a string in bacon (a lot of 'a's and 'b's) to plain text. The plaintext is returned. If a character can't be translated, a space will be inserted. """ bacondict = {} plaintext = "" bacon = bacon.lower() bacon = re.sub("[\W\d]", "", bacon.strip()) for i in xrange(0,26): tmp = bin(i)[2:].zfill(5) tmp = tmp.replace('0', 'a') tmp = tmp.replace('1', 'b') bacondict[tmp] = chr(65+i) for i in xrange(0, len(bacon)/5): plaintext = plaintext + bacondict.get(bacon[i*5:i*5+5], ' ') return plaintext crypto = """BAABBAABBBABAAABAABA ABAAABAABA AAAAA AAAABAAAAAAAABAABBBAABBAB AAABAABAAAABBBBAABBBAABAABAAAB ABBAAAABAABAABABAABAAAAAAAABBAAABAA""" print bacon2text(crypto)
Initial URL
Initial Description
Initial Title
Decode Bacon\'s cipher
Initial Tags
python
Initial Language
Python