First, in case this is the problem: A large Levy curve (recursive case) is constructed by arranging two smaller ones facing each other 'across the room', with two more 'on the floor' facing up, in between. A small Levy curve (base case) is just a straight line. So indeed, the base case is:
def lev(n):
if n == 0:
return 'F'
else:
# Recursive case here
But for the recursive case, you just have it call lev(n-1). You are right that you will need to do this, but you will need to do it four times, and rotate in between. This will create the desired 'two smaller curves facing each other, with two in between'.
Inspecting the curve carefully (here: https://en.wikipedia.org/wiki/File:Levy_C_construction.png), we see that we will need to draw one curve, then turn right, then draw another, then turn completely around, then draw a third curve, and finally, turn right and draw the final curve.
This can be done fairly simply:
dev lev(n):
if n == 0:
# Base case
return 'F'
else:
# Recursive case
# Calculate the smaller curve
smaller = lev(n-1)
# Add in the turning in between the smaller curves
final = smaller # First curve
if n%2 == 0: # Even depths require right turns
final += 'RR' # Rotate 90 degrees
final += smaller # Second curve
final += 'RRRR' # Rotate 180 degrees
final += smaller # Third curve
final += 'RR' # Rotate 90 degrees
final += smaller # Final curve
else: # Odd depths require left turns
final += 'LL' # Rotate 90 degrees
final += smaller # Second curve
# (No full rotation in odd depths)
final += smaller # Third curve
final += 'LL' # Rotate 90 degrees
final += smaller # Final curve
return final # Done!