import binascii class Analyzer: def __init__(self): self.stats = dict() def consume(self, tag, data): if tag == "stdin": return first_byte = binascii.unhexlify(data)[0] self.stats[first_byte] = self.stats.get(first_byte, 0) + 1 def run(filename): analyzer = Analyzer() with open(filename, "r") as f: for line in f.readlines(): tag, data = line.rstrip("\n").split(" ", 1) analyzer.consume(tag, data) for k, v in analyzer.stats.items(): print(f"{k}: {v}") return analyzer if __name__ == "__main__": import sys run(sys.argv[1])