def createPatternDictionary(pattern): rules = {1: ('...', '.'), 2: ('..x', '.'), 4: ('.x.', '.'), 8: ('.xx', '.'), 16: ('x..', '.'), 32: ('x.x', '.'), 64: ('xx.', '.'), 128: ('xxx', '.')} left = pattern for i in sorted(rules.keys(), reverse=True): if left - i >= 0: left = left - i rules[i] = rules[i][0], 'x' return rules