Task
=======
Make a custom esolang interpreter for the language Tick. Tick is a descendant of [Ticker](https://www.codewars.com/kata/esolang-ticker) but also very different data and command-wise.
Syntax/Info
========
Commands are given in character format. Non-command characters should be ignored. Tick has an potentially infinite memory as opposed to Ticker(which you have a special command to add a new cell) and only has 4 commands(as opposed to 7). Read about this esolang [here](https://esolangs.org/wiki/Tick).
Commands
========
`>`: Move data selector right
`<`: Move data selector left(infinite in both directions)
`+`: Increment memory cell by 1. 255+1=0
`*`: Add ascii value of memory cell to the output tape.
Examples
========
**Hello world!**
```
'++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++**>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*>++++++++++++++++++++++++++++++++*>+++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*<<*>>>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*<<<<*>>>>>++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++++*>+++++++++++++++++++++++++++++++++*'
```
from collections import defaultdict

def interpreter(tape):
    mem, p_mem, output = defaultdict(lambda: 0), 0, []
    for command in tape:
        if   command == '>': p_mem += 1
        elif command == '<': p_mem -= 1
        elif command == '+': mem[p_mem] = mem[p_mem] + 1 & 0xff
        elif command == '*': output.append(mem[p_mem])
    return ''.join(map(chr, output))
from collections import defaultdict

def interpreter(tape):
    mem, p_mem, output = defaultdict(lambda: 0), 0, []
    for command in tape:
        if   command == '>': p_mem += 1
        elif command == '<': p_mem -= 1
        elif command == '+': mem[p_mem] = mem[p_mem] + 1 & 0xff
        elif command == '*': output.append(mem[p_mem])
    return ''.join(map(chr, output))