f = open('./'+args['output']+'.huff', 'wb') pickle.dump(coder.omega, f) except Exception: print('Error while writing huffman-dictionary to file!') quit() # We need to uncompress elif (args['uncompression'] != None): if (args['verbose']): print('Coding-Mode is set to UN-COMPRESSION!') print('Uncompressing data...') outputData = coder.decode(inputData) # WRITE TO OUTPUT FILE # ===================== if (args['verbose']): print('Writing output to file...') try: f = open("./"+args['output'], "w+") try: f.writelines(outputData) finally: f.close() except IOError: print('Error wile writing to output file!') quit() if (args['verbose']): if (args['compression'] != None): coder.verbose() print('EVERYTHING WENT BETTER THAN EXCEPTED!')
print('Welchen Aufgabenteil moechten Sie testen?'); print('[1|2|3]'); which = input(">> ") ######### AUFGABE 5.2 TESTS ######### if (which == "3"): from huffman import Huffman Huff = Huffman() Huff.buildOwn = True print('Geben Sie einen Text zum codieren ein!'); text = input('>> '); encoded = Huff.encode(text) print(encoded) print('Dekodiert:') print(Huff.decode(encoded)) Huff.verbose() ######### AUFGABE 5.2 TESTS ######### if (which == "2"): from rle import RunLenghtEncoding rle = RunLenghtEncoding(); print('Geben Sie einen Text zum codieren ein!'); text = input('>> '); res = rle.encode(text) print("Der Komprimierte Text lautet:") print(res) print("Der Rück-Kodierte Text lautet:") print(rle.decode(res))