Форум сайта python.su
1
Добрый день, товарищи! Всех с наступающим
Возник весьма глупый вопрос(точнее мысля) как работают функции в python, объясните пожалуйста.
Пример 1. Функция в функции. Вот вызываю из одной функцию другую функцию. Выводит все нормально.
def hello () : print ("hello") hi () def hi () : print ("hi") hello () hi ()
def hello () : print ("hello") hi () def hi () : print ("hi") hello () hello () hi ()
Офлайн
58
Функции вызывают друг друга по очереди. И так до бессконечности…
Офлайн
7
А что тут непонятного?
Посмотри на второй кусок - там чётко написано - def hello() - ищи на той стороне улицы (тобишь вызов hi), перешел на другую сторону - def hi() - а там тоже ищи на той стороне улицы (вызов hello), вот и бегает туда сюда, пока не будет сбит машиной
Офлайн
1
С дорогой это красочно и трагично и живописно. Мне в контексте приветствий из программы вспомнился стишок:
Я ПРОДАВАТЬ НЕСЛА ТВОРОГ
(Из английской народной поэзии)
Перевёл Г. Недров
Я продавать несла творог.
Стоял денёк погожий.
И вдруг навстречу старичок,
На здешних непохожий.
Он мне дорогу уступил,
С поклоном шляпу снял,
И “здравствуйте”, и “здравствуйте”,
И “здравствуйте” сказал.
Ну не могла же я в ответ
Пройти и промолчать:
Он - “здравствуйте”,
Я - “здравствуйте”,
И “здравствуйте” опять.
Старик продрог, прокис творог,
Стояли мы дней пять.
И “здравствуйте”, и “здравствуйте”,
И “здравствуйте” опять.
Офлайн
43
интересно, что будет с тсом если он попытается понять как эти числа фибоначчи считаются
R = lambda f : ((lambda r : lambda a : f(r(r), a)) (lambda r : lambda a : f(r(r), a))) fib = R(lambda self, n : n if n < 2 else self(n-2) + self(n-1)) print(list(map(fib, range(10))))
Офлайн
75
Очень советую пройти по ссылке http://goo.gl/eOJTCY
Офлайн
75
sergeek
XГМ
Пиши уже на чистом хаскеле. Чего уже тащить эту хрень в питон ?
Отредактировано Singularity (Дек. 26, 2013 18:08:25)
Офлайн
43
SingularityПочему хрень-то ?
Пиши уже на чистом хаскеле. Чего уже тащить эту хрень в питон ?
Мне просто интересно смотреть на функции по другим углом. И ничего я не тащу в питон
Офлайн
1
Благодарю ребят, все понятно. И еще вопрос, должна ли каждая функция возвращать значение с помощью return?
Офлайн
58
Она и так возвращает. Только если вы явно не указали что вернуть в return, то она возвращает значение None.
Отредактировано 4kpt_II (Дек. 28, 2013 16:01:37)
Офлайн