X-Git-Url: https://git.njae.me.uk/?a=blobdiff_plain;f=cipher.py;h=b3ab488db74c3af8090aefcc2396c2d503725064;hb=3b82269b94de43fa0150fe5b34ca39b4ba3b6ba4;hp=f938f3677f321d02805688ac443328314af0406f;hpb=e354c8aa351b8b9c0d9f28aa5708883c209809fe;p=cipher-tools.git diff --git a/cipher.py b/cipher.py index f938f36..b3ab488 100644 --- a/cipher.py +++ b/cipher.py @@ -1,5 +1,21 @@ import string +import collections +english_counts = collections.defaultdict(int) +with open('count_1l.txt', 'r') as f: + for line in f: + (letter, count) = line.split("\t") + english_counts[letter] = int(count) + +def sanitise(text): + sanitised = [c.lower() for c in text if c in string.ascii_letters] + return ''.join(sanitised) + +def letter_frequencies(message): + frequencies = collections.defaultdict(int) + for letter in sanitise(message): + frequencies[letter]+=1 + return frequencies def caesar_cipher_letter(letter, shift): if letter in string.ascii_letters: