Python Glossary English

Python 3.11+enumфункция

enum.show_flag_values()

флаги

Раскладывает целое значение флага на степени двойки: show_flag_values(13) даёт [1, 4, 8]. Помогает понять, из каких битов состоит флаг.

Синтаксис

enum.show_flag_values(value)

Сообщения об ошибках enum сами отсылают к этой функции: при проверке @verify(NAMED_FLAGS) ошибка говорит «use enum.show_flag_values(value) for details». Она принимает int (или значение флага) и возвращает список отдельных битов по возрастанию — по нему видно, какой бит не назван членом Flag. На отрицательное число функция не возвращает пустой список, а поднимает ValueError.

Примеры

import enum
print(enum.show_flag_values(13))  # → [1, 4, 8]
class Perm(enum.IntFlag):
    R = 4
    W = 2
    X = 1
print(enum.show_flag_values(Perm.R | Perm.X))  # → [1, 4]

См. также

Открыть в полном глоссарииdocs.python.orgСообщить о неточности