#python #fibonacci
Вопрос:
здесь новичок в python. У меня есть код ниже, но когда я запускаю код, ничего не отображается.
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci (n-1) fibonacci (n-2)
что я упускаю ? это заявление для печати ? когда я добавляю print (), в результате я получаю 327, но я не думаю, что это ряд Фибоначчи.
Комментарии:
1. Потому что вы не используете команду print()
Ответ №1:
Это выведет первые 10 чисел Фибоначчи в соответствии с вашим кодом. Без инструкции печати вы не увидите выходных данных.
def fibonacci(n):
if n <= 1:
return n
else:
return fibonacci (n-1) fibonacci (n-2)
for i in range(10):
print(fibonacci(i))
Ваша текущая функция фибоначчи() просто возвращает значение, вы можете либо взять это возвращаемое значение и распечатать его, как я сделал выше, либо ничего не возвращать и просто распечатать значение непосредственно в функции (см. Ниже).
def fibonacci(n):
if n <= 1:
print(n)
else:
print(fibonacci (n-1) fibonacci (n-2))
for i in range(10):
fibonacci(i)
Комментарии:
1. Спасибо, я понимаю ваш первый код, когда я запускаю второй код, я не вижу вывода, даже если есть инструкция печати ?
2. @Jag Спасибо, что указали на это! Я только что отредактировал инструкцию, которая вызывает функцию. Проблема заключалась в том, что фибоначчи () — это функция, которую на самом деле нужно вызывать. Я бы посоветовал вам провести некоторое исследование того, как должны использоваться функции и какова их цель, они невероятно полезны, но могут быть запутанной концепцией. w3schools.com/python/python_functions.asp
3. Спасибо. здесь новичок. я приму ваш совет и проведу некоторые исследования.
4. @Jag Если вы нашли ответ, достаточный для вашего вопроса, не стесняйтесь нажать на галочку слева, чтобы закрыть этот вопрос