def recursive(s):
    l = len(s)
    if l < 2:
        return s
    return recursive(s[l//2:]) + recursive(s[:l//2])

s = "hello there"
print(recursive(s))

def iterative(s):
    r = list(s)
    i, j = 0, len(s) - 1
    while i < j:
        r[i], r[j] = r[j], r[i]
        i += 1
        j -= 1
    return "".join(r)

print(iterative(s))

def pythonic(s):
    r = list(reversed(s))
    return "".join(r)

print(pythonic(s))

@@ -398,22 +398,71 @@
 oin(r)%0A%0A
-print(
+def ultra_pythonic(s):%0A    return s%5B::-1%5D%0A%0Aprint(ultra_
 pythonic

Add different implementation of reverse_string.py