From: Tomas Musil Date: Thu, 29 Mar 2012 18:11:52 +0000 (+0200) Subject: tisk referencni tabulky X-Git-Url: http://git.tomasm.cz/krypto.git/commitdiff_plain/a710eb79b9b8717d84a084dbb14a79ebe839d86f tisk referencni tabulky --- diff --git a/referencni.py b/referencni.py index 06bfeec..d1a89ea 100644 --- a/referencni.py +++ b/referencni.py @@ -1,13 +1,15 @@ #!/usr/bin/env python -from itertools import combinations +"""Modul pro praci s referencnimi tabulkami.""" + import pickle from ocesavac import ocesat import codecs -from koincidence import index_koincidence +from koincidence import index_koincidence2 from spolecne import ABECEDA, MABECEDA def nova_tabulka(tabulka, abc=MABECEDA): + """Z tabulky cetnosti vyskytu udela tabulku percentualni cetnosti.""" celkem = sum(sum(tab2.values()) for tab2 in tabulka.values()) if celkem != 0: for i in abc: @@ -54,16 +56,27 @@ class treference: self.soubory.append(soubor) def uloz(co, kam): - f = open(kam, 'w') - pickle.dump(co, f) - f.close() + soubor = open(kam, 'w') + pickle.dump(co, soubor) + soubor.close() def nacti(odkud): return pickle.load(open(odkud)) +def tiskni(sref): + r = nacti(sref) + d = dict(zip(r.abeceda, r.frekvence)) + for i in range(len(r.abeceda)): + print "{0} {1:>6.2%} {2} {3:>6.2%}".format(r.abeceda[i], r.frekvence[i], r.poradi[i], d[r.poradi[i]] ) + print " " + print "Index koincidence: {0:>5.2%}".format(r.index_koinc) + print " " + for char in r.abeceda: + print char + " " + " ".join(["{:0>5.2f}".format(r.tabulka[char][ch2] * 1000) for ch2 in r.abeceda]) + def prumerny_index(tref): suma = 0 - for soubor in ref.soubory: + for soubor in tref.soubory: f = codecs.open(soubor, encoding='UTF-8') text = ocesat(f.read(), tref.mezery) f.close() diff --git a/tiskni.py b/tiskni.py new file mode 100755 index 0000000..c13a4fa --- /dev/null +++ b/tiskni.py @@ -0,0 +1,5 @@ +#!/usr/bin/env python + +from referencni import * + +tiskni('bref')