add the ulibs
This commit is contained in:
1 parent
150708564c
commit
f3982221a1
2 files changed
+85
No files matched your search
@@ -0,0 +1,30 @@
|
||||
import secrets
|
||||
|
||||
|
||||
class MicroUUID:
|
||||
def __init__(self):
|
||||
self.uuid = self.generate_uuid()
|
||||
|
||||
def generate_uuid(self):
|
||||
# Generate a random UUID (version 4)
|
||||
random_bytes = secrets.token_bytes(16)
|
||||
# Set the version to 4 (randomly generated UUID)
|
||||
random_bytes = bytearray(random_bytes)
|
||||
random_bytes[6] = (random_bytes[6] & 0x0F) | 0x40
|
||||
# Set the variant to RFC 4122
|
||||
random_bytes[8] = (random_bytes[8] & 0x3F) | 0x80
|
||||
uid = "".join(f"{byte:02x}" for byte in random_bytes)
|
||||
return f"{uid[0:8]}-{uid[8:12]}-{uid[12:16]}-{uid[16:20]}-{uid[20:32]}"
|
||||
|
||||
def __str__(self):
|
||||
return self.uuid
|
||||
|
||||
|
||||
# Example usage:
|
||||
def example():
|
||||
uuid_instance = MicroUUID()
|
||||
print(f"Generated UUID: {uuid_instance}")
|
||||
|
||||
|
||||
if __name__ == "__main__":
|
||||
example()
|
||||
Reference in new issue
Block a user