Я пытаюсь написать две функции, которые принимают целое число и возвращают кортеж. Я могу приблизиться к тому, что хотел бы вернуться, но то, что я возвращаю, содержит в себе несколько круглых скобок. например, я хочу, чтобы rec_range (5) возвращал (0,1,2,3,4) вместо ((((0, 1), 2), 3), 4).Рекурсия и кортежи в Python
две функции я пишу
def rec_range(n):
'''Takes a natural number n and returns a tuple of numbers starting
with 0 and ending before n.
Int-->Tuple'''
if n == 0:
return
if n == 1:
return 0
if n >= 1:
return rec_range(n-1),(n-1)
def squares_tuple(n,m):
'''Takes a natural numbers n and m and returns a tuple of the squares
of all the natural numbers starting with n and ending with m-1.
Int,Int-->Tuple'''
while n<=m:
return n * n, squares_tuple(n + 1, m)
Кроме того, я не хочу использовать диапазоны(), map(), циклы или списки. – Brett
да, но я хотел бы знать, почему я получаю то, что получаю. – Brett
Это не очень хороший вариант для рекурсии – wim