Spec-Zone.ru › RethinkDB python

Команда ReQL: ~, not_

Синтаксис команды

bool.not_() → bool
not_(bool) → bool
(~bool) → bool

Описание

Вычисляет логическое отрицание (not) выражения.

not_ может быть вызвана либо цепочкой методов, сразу после выражения, которое вычисляется как булево значение, либо путём передачи выражения в качестве параметра not_. Все значения, которые не являются False или None, будут преобразованы в True.

Вы также можете использовать ~ в качестве сокращённого оператора.

Пример: Not true is false.

r.not_(True).run(conn)
r.expr(True).not_().run(conn)
(~r.expr(True)).run(conn)

Эти значения соответствуют false.

Обратите внимание, что при использовании ~ выражение заключено в скобки. Без этого Python вычислит r.expr(True) сначала, а не используя оператор ReQL, и вернёт некорректное значение. (~True вычисляется как −2 в Python.)

Пример: Вернуть всех пользователей, у которых нет поля «flag».

r.table('users').filter(
    lambda users: (~users.has_fields('flag'))
).run(conn)

Пример: Как выше, но в префиксном стиле.

r.table('users').filter(
    lambda users: r.not_(users.has_fields('flag'))
).run(conn)

Связанные команды

  • ==, eq
  • !=, ne

© RethinkDB contributors
Licensed under the Creative Commons Attribution-ShareAlike 3.0 Unported License.
https://rethinkdb.com/api/python/not/

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API