РЕПЕТИТОР математика физика информатика
Для школьников и студентов. Подтягивание пробелов. ЦЭ, ЦТ, ОГЭ, ЕГЭ.
Идет набор на ЛЕТО. Жмите для подробностей:)
274 of 643 menu

Метод setdefault

Метод setdefault применяется к объекту конфигурации app.config и устанавливает значение ключа только тогда, когда такого ключа в конфигурации ещё нет. Первым параметром передаётся имя ключа, а вторым - значение по умолчанию. Если ключ уже присутствует, метод не перезаписывает его и возвращает текущее значение. Если ключа нет, он создаётся с переданным значением.

Синтаксис

app.config.setdefault(key, [default])

Пример

Давайте установим значение для несуществующего ключа:

from flask import Flask app = Flask(__name__) res = app.config.setdefault('SECRET_KEY', 'abcde') print(res) print(app.config['SECRET_KEY'])

Результат выполнения кода:

abcde abcde

Пример

А теперь попробуем установить значение для ключа, который уже есть в конфигурации:

from flask import Flask app = Flask(__name__) app.config['SECRET_KEY'] = 'abcde' res = app.config.setdefault('SECRET_KEY', 'hello') print(res) print(app.config['SECRET_KEY'])

Результат выполнения кода:

abcde abcde

Как видно из примера, старое значение 'abcde' осталось нетронутым, несмотря на то, что вторым параметром было передано 'hello'.

Пример

Метод setdefault удобно применять для задания значений по умолчанию сразу для нескольких настроек:

from flask import Flask app = Flask(__name__) app.config.setdefault('DEBUG', False) app.config.setdefault('TESTING', False) app.config.setdefault('SECRET_KEY', 'abcde') print(app.config['DEBUG']) print(app.config['TESTING']) print(app.config['SECRET_KEY'])

Результат выполнения кода:

False False abcde

Смотрите также

  • класс Config,
    который хранит настройки приложения Flask
  • метод get,
    который возвращает значение ключа конфигурации
  • метод update,
    который обновляет сразу несколько настроек
  • метод pop,
    который удаляет ключ и возвращает его значение
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить