GH avatar Bite 84. Flatten lists recursively (Droste Bite)

Complete flatten that takes a list of lists (which can have lists ad infinitum) and flatten them into a one dimensional list.

So this input:

[1, [2, 3], [4, 5, [6, 7, [8, 9, 10]]]]
... should generate this output:
[1, 2, 3, 4, 5, 6, 7, 8, 9, 10]

Make sure you support both lists and tuples. You probably want to use recursion here ... have fun!

Will you be Pythonista #47 to crack this Bite?
It takes an average of ~39 minutes to solve this Bite (submissions 5-240 min).
Pythonistas rate this Bite 4.0 on a 1-10 difficulty scale.
» Up for a challenge? 💪

Buy Now Login and get coding
We use Python 3.7