Sunday, May 25, 2014

How to convert UUID to String in Python!!!

              A universally unique identifier (UUID) is an identifier standard used in software construction, standardized by the Open Software Foundation (OSF) as part of the Distributed Computing Environment (DCE). Check here for more details.

             I recently faced a  scenario where I need to use string format of the UUID value. I searched in google and could not find proper answer. Finally I got the solution and here it is. After Creating a UUID, we can get different different values depending on the format. For example, we can get int, hex and byte values of UUID. Similarly using urn (Uniform resource name), we can get the string value of the UUID as shown below.

>>> uid = uuid.uuid1() #creating UUID
>>> uid 
>>> #int format of UUID
>>> uid.hex  #hexa format of UUID
>>> uid.bytes  #bytes format of UUID
'R\xf8\xe1\xba\xe3\xac\x11\xe3\x822\xa8 f\x13ax'
>>> uid.urn #uniform resource name

From the above example uid.urn returns string value 'urn:uuid:52f8e1ba-e3ac-11e3-8232-a82066136178'. But we need only value and we dont need first nine characters 'urn:uuid:', so we can skip those 9 characters to get the string value as shown below.

>>> uid_str = uid.urn
>>> str = uid_str[9:]
>>> str

Happy Coding!!!


Alex Barcelo said...



is enough

chanduthedev p said...

Thanks Alex for simple way to get uid in string format.

Anonymous said...

I felt off my chain just reading this, you manually trip characters from a string? Just use str function, it totally works

here is sample even with JSONpretty dump added

import uuid
import json

mydict = { "myuuid" : str(uuid.uuid1()) }

Popular Posts