Сообщить об ошибке.

Класс UUID() модуля uuid в Python

Создает UUID из байтовых строк и кортежа из шести целых чисел

Синтаксис:

import uuid

uuid.UUID(hex=None, bytes=None, bytes_le=None, 
          fields=None, int=None, version=None, 
          *, is_safe=SafeUUID.unknown)

Параметры:

  • hex=None - строка из 32 шестнадцатеричных цифр,
  • bytes=None - строка 16 байтов с прямым порядком байтов,
  • bytes_le=None - строка 16 байтов с прямым порядком байтов,
  • fields=None - кортеж из шести целых чисел,
  • int=None - 128-битное целое число,
  • version=None - int - версия UUID,
  • is_safe=SafeUUID.unknown - информация о безопасности UUID.

Возвращаемое значение:

Описание:

Класс UUID() модуля uuid создает объект UUID из:

  • строки из 32 шестнадцатеричных цифр, переданного в качестве аргумента hex,
  • строки 16 байтов с прямым порядком байтов, переданного в качестве аргумента bytes,
  • строки 16 байтов с прямым порядком байтов, переданного в качестве аргумента bytes_le,
  • кортежа из шести целых чисел (32-bit time_low, 16-bit time_mid, 16-bit time_hi_version, 8-bit clock_seq_hi_variant, 8-bit clock_seq_low, 48-bit node), переданного в качестве аргумента fields
  • 128-битного целого числа, переданного в качестве аргумента int.

Когда задана строка из шестнадцатеричных цифр, то фигурные скобки, дефисы и префикс URN являются необязательными. Например, все эти выражения выдают один и тот же UUID:

UUID('{12345678-1234-5678-1234-567812345678}')
UUID('12345678123456781234567812345678')
UUID('urn:uuid:12345678-1234-5678-1234-567812345678')
UUID(bytes=b'\x12\x34\x56\x78'*4)
UUID(bytes_le=b'\x78\x56\x34\x12\x34\x12\x78\x56' +
              b'\x12\x34\x56\x78\x12\x34\x56\x78')
UUID(fields=(0x12345678, 0x1234, 0x5678, 0x12, 0x34, 0x567812345678))
UUID(int=0x12345678123456781234567812345678)

Должен быть указан точно один из hex, bytes, bytes_le, fields или int.

Аргумент version не обязателен. Если version задан, то результирующий UUID будет иметь свой вариант и номер версии, установленный в соответствии с RFC 4122, с переопределением битов в заданном hex, bytes, bytes_le, fields или int.

Сравнение объектов UUID() производится путем сравнения их атрибутов UUID.int. Сравнение с не-UUID объектом вызывает исключение TypeError.

Функция str(uuid) возвращает строку в форме 12345678-1234-5678-1234-567812345678, где 32 шестнадцатеричные цифры представляют UUID.

Объект UUID определяет атрибуты только для чтения:

UUID.bytes:

Атрибут UUID.bytes - UUID в виде 16-байтовой строки, содержащей шесть целочисленных полей в порядке байтов с прямым порядком байтов.

UUID.bytes_le:

Атрибут UUID.bytes_le - UUID в виде 16-байтовой строки с time_low, time_mid и time_hi_version в порядке байтов с прямым порядком байтов.

UUID.fields:

Атрибут UUID.fields - кортеж из шести целочисленных полей UUID, которые также доступны в виде шести отдельных атрибутов и двух производных атрибутов:

  • time_low - Первые 32 бита UUID,
  • time_mid - Следующие 16 битов UUID,
  • time_hi_version - Следующие 16 битов UUID,
  • clock_seq_hi_variant - Следующие 8 битов UUID,
  • clock_seq_low - Следующие 8 битов UUID,
  • node - Последние 48 бит UUID,
  • time - 60-битная временная метка,
  • clock_seq - 14-битный порядковый номер.

UUID.hex:

Атрибут UUID.hex - UUID в виде шестнадцатеричной строки из 32 символов.

UUID.int:

Атрибут UUID.int - UUID в виде 128-разрядного целого числа.

UUID.urn:

Атрибут UUID.urn UUID как URN, как указано в RFC 4122.

UUID.variant:

Атрибут UUID.variant - вариант UUID, который определяет внутреннюю разметку UUID.

Это будет одна из констант RESERVED_NCS, RFC_4122, RESERVED_MICROSOFT или RESERVED_FUTURE.

UUID.version:

Атрибут UUID.version это номер версии UUID от 1 до 5, имеет смысл только тогда, когда вариант - RFC_4122.

UUID.is_safe:

Атрибут UUID.is_safe - перечисление SafeUUID, которое указывает, генерировала ли платформа UUID безопасным для многих процессов способом.