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

Атрибут query класса URL

Атрибут query класса URL возвращает словарь параметров строки запроса, которые были переданы в URL подключения. Параметры запроса - это пары ключ-значение, расположенные после вопросительного знака ?. Атрибут возвращает объект типа immutabledict, то есть неизменяемый словарь. Для изменения параметров используются методы update_query_dict и difference_update_query.

Синтаксис

url.query

Пример

Давайте создадим объект URL с параметрами строки запроса и выведем атрибут query:

from sqlalchemy.engine import make_url url = make_url('sqlite:///:memory:?check_same_thread=false&timeout=30') print(url.query)

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

immutabledict({'check_same_thread': 'false', 'timeout': '30'})

Пример

Давайте получим отдельный параметр из словаря query:

from sqlalchemy.engine import make_url url = make_url('sqlite:///:memory:?check_same_thread=false&timeout=30') print(url.query['timeout'])

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

"30"

Пример

Давайте проверим тип возвращаемого значения атрибута query:

from sqlalchemy.engine import make_url url = make_url('sqlite:///:memory:?check_same_thread=false') print(type(url.query))

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

<class 'sqlalchemy.util._collections.immutabledict'>

Пример

Давайте попробуем изменить словарь query напрямую и убедимся, что он неизменяемый:

from sqlalchemy.engine import make_url url = make_url('sqlite:///:memory:?check_same_thread=false') try: url.query['timeout'] = '30' except TypeError as e: print(e)

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

"'immutabledict' object does not support item assignment"

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

  • класс URL,
    который представляет строку URL подключения
  • метод update_query_dict,
    который обновляет параметры строки запроса
  • метод difference_update_query,
    который удаляет параметры строки запроса
  • метод render_as_string,
    который возвращает URL в виде строки
Мы используем cookie для работы сайта, аналитики и персонализации. Обработка данных происходит согласно Политике конфиденциальности.
принять все настроить отклонить