I’ve always found recursion somewhat unnatural to think about, but somehow satisfying when I can see it unfolding in my mind – this simple exercise in reversing a string using recursion is a case in point…
>>> def reverse(str): if len(str)==1: return str else: return reverse(str[1:])+str[0] >>> reverse('hello') 'olleh' >>>
Of course, this is just a thought experiment. In real-world Python, you’d do this:
>>> 'abcdef'[::-1] 'fedcba' >>>