Подтвердить что ты не робот

Python: как преобразовать действительный uuid из String в UUID?

Я получаю данные как

   {
        "name": "Unknown",
        "parent": "Uncategorized",
        "uuid": "06335e84-2872-4914-8c5d-3ed07d2a2f16"
    },

и мне нужно преобразовать uuid из String в uuid

Я не нашел способ в документах python, или я пропустил что-то основное здесь?

4b9b3361

Ответ 1

Просто передайте его uuid.UUID:

import uuid

o = {
    "name": "Unknown",
    "parent": "Uncategorized",
    "uuid": "06335e84-2872-4914-8c5d-3ed07d2a2f16"
}

print uuid.UUID(o['uuid']).hex

Ответ 2

Если вышеприведенный ответ не помог вам преобразовать действительный UUID в строковый формат обратно к реальному объекту UUID... с помощью uuid.UUID(your_uuid_string) работал у меня.

In [6]: import uuid
   ...:
   ...: o = {
   ...:     "name": "Unknown",
   ...:     "parent": "Uncategorized",
   ...:     "uuid": "06335e84-2872-4914-8c5d-3ed07d2a2f16"
   ...: }
   ...:
   ...: print uuid.UUID(o['uuid']).hex
   ...: print type(uuid.UUID(o['uuid']).hex)
06335e84287249148c5d3ed07d2a2f16
<type 'str'>

In [7]: your_uuid_string = uuid.UUID(o['uuid']).hex

In [8]: print uuid.UUID(your_uuid_string)
06335e84-2872-4914-8c5d-3ed07d2a2f16

In [9]: print type(uuid.UUID(your_uuid_string))
<class 'uuid.UUID'>