Задать вопрос
vessels
@vessels
Ни черта не понял, но очень интересно!

Функция calculate_value()?

Добрый вечер, есть код:
def get_my_item():
    rv = cache.get('my-item')
    if rv is None:
        rv = calculate_value()
        cache.set('my-item', rv, timeout=5 * 60)
    return rv

В переменной rv лежит эта функция, что это за функция и что она из себя представляет? Tо при компиляции:
NameError: name 'calculate_value' is not defined.
  • Вопрос задан
  • 111 просмотров
Подписаться 1 Простой 4 комментария
Пригласить эксперта
Ответы на вопрос 1
amarao
@amarao
`calculate_value()` со скобками - это вызов функции, а не использование функции как значения. В rv попадает то, что возвращает функция `calculate_value`. Что именно эта функция делает и что она возвращает можно понять одним из двух способов: 1) посмотреть на её исходный текст 2) в отладчике (например, pdb) дойти до этого места и сделать интроспекцию для `rv`, команды: dir(rv), type(rv), help(rv).

По поводу NameError - это означает, что функция не найдена. Она должна быть либо импортирована из модуля, либо написана, либо сконструирована динамически где-то в программе до первого своего вызова.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы
от 200 000 до 300 000 ₽
Greenway Global Новосибирск
от 150 000 ₽
Akronix Санкт-Петербург
от 150 000 до 200 000 ₽
02 февр. 2025, в 00:55
2500 руб./за проект
02 февр. 2025, в 00:25
5000 руб./за проект
02 февр. 2025, в 00:18
1000 руб./за проект