Может кто-нибудь мне помочь, я застрял в базовых случаях превращения этого кода в рекурсивную функцию... Очевидно, невозможно использовать циклы в рекурсивной функции.
def diamond(a):
assert a > 0, "width must be greater than zero"
for i in range(0, a, 2):
for c in range(0, a - i, 2):
print(" ", end='')
if a % 2 == 0:
i += 1
for m in range(0, i - 1):
print("*", end='')
print()
for i in range (0, a, 2):
for c in range(0, i, 2):
print(" ", end='')
for m in range(0, a - i):
print("*", end='')
print()
Подробнее здесь: https://stackoverflow.com/questions/116 ... -in-python