728x90
반응형
오늘 포스팅 내용은 python으로 uuid 생성 방법을 소개하고자 한다.
UUID란?
uuid란 universally unique identifier의 축약어로 이를 직역하자면 범용 고유 식별자이다.
말그대로 범용적으로 또는 겹치지 않도록 숫자들을 생성하여 각 개체들을 식별하고 구별할 수 있도록 하는 식별자 표준이다.
특히 네트워크 상에서 많이 사용이 되는데, 통신관리시스템 내부에서 개발되고 있는 개별 시스템을 구별할 수 있도록 고유성을 부여하는데 이때 사용되는 표준이 uuid이다.
이러한 uuid는 32개의 16진수로 구성되어 있으며 8-4-4-4-12의 그룹으로 나눠져 있다.
Python UUID 구현
python으로 uuid를 구현하는데는 굉장히 쉽다.
단지 uuid의 라이브러리를 사용하여, uuid1,uuid2,uuid3,uuid4 중 선택하여 생성할 수 있다.
각 함수들의 차이는 다른 블로그에도 많이 구현되어 있으니, 이 포스터에서는 과연 1000개의 uuid를 생성하더라도 모두 다른지 확인하는것으로 포스팅을 마치겠다.
[UUID 라이브러리 임포트]
from uuid import uuid4
[UUID 생성]
print(uuid4()) # 20cebaf3-7e71-4ece-94b5-aa7ffd848eee
[UUID 1000개 생성]
uuid_numbers = []
for i in range(1000):
num = uuid4()
uuid_numbers.append(num)
print(uuid_numbers)
"""
[UUID('e7d07625-27ff-4c3c-926e-c8b2c8fdddae'),
UUID('5cb54a6b-3708-4210-a244-7b1d96d8f3ae'),
UUID('355f1e7c-1d8a-4e4a-910b-411afb95a6ac'),
UUID('0b31be6f-ad25-458c-bfc3-c75e108eb807'),
UUID('a6c9d6d1-d897-4876-951d-f7d9ef771d62'),
UUID('cda4b009-c060-423e-95c2-06442b4cf9d8'),
UUID('ad95006f-e057-4213-9244-2a57c2c63129'),
UUID('2ba96c96-43bb-4098-95ee-bd9903eff02b'),
UUID('980c45bc-1407-4468-aeb1-03537e878188'),
UUID('b02a15a3-6282-4491-9457-45f359cc0cbd'),
UUID('5e321cb6-5351-4466-9fde-522e411b7fd7'),
UUID('d58e57a0-a638-4b07-a08a-b929c96f3e75'),
UUID('9b4a6459-9d6c-49ce-9a9a-fb0eb92820f0'),
UUID('2d73da61-072d-4178-b967-7ace40118dea'),
UUID('dfdf743e-138a-4720-ae0b-9a59f46ab03e'),
UUID('5dd230cc-24f5-4249-aa4c-0fda20b5e8f2'),
UUID('7f54259f-3364-4d02-9a0f-57a8abe58d7b'),
UUID('b6855aa9-620b-477b-881d-a4bffb758857'),
UUID('aecbbda6-616f-4df4-a0ea-d7a0f74531f8'),
UUID('967ca4af-c169-4af5-b372-3837bf4b05aa'),
UUID('721b4fce-e551-4396-a6a0-87aa94dff403'),
UUID('0b73cc8a-ec0d-45ec-a422-958e664e0968'),
UUID('79d3a2ee-df51-4a81-a9a3-063c880a0f9f'),
UUID('b723c725-6991-4ba9-b13d-540a85c32024'),
UUID('49ed94b2-a149-48e9-928e-76d4fd58e58e'),
...
UUID('c49f4cde-d5ee-44b0-b7cd-51b87d4f937d'),
UUID('e39a137e-d663-4aa3-bd90-9edb3f9bfe30'),
UUID('3fbb0f63-dcac-48da-b599-639f89d1e620'),
UUID('adc54578-61ab-4bd0-b333-7026f0d652dd'),
UUID('568aad0b-2d91-4378-b284-ffc67c95a63a')]
"""
[UUID 1000개 중복 확인]
len(uuid_numbers) == len(set(uuid_numbers)) # True
위 코드와 같이 uuid_numbers에서 중복된 값을 제외하더라도 기존의 uuid_numbers의 길이와 동일한다.
즉, 겹치는 것이 없다.
728x90
반응형
'Python' 카테고리의 다른 글
[Python] tqdm - 알고리즘 진행률 확인하기 (0) | 2022.09.10 |
---|---|
[Python] for loop - enumerate, zip 사용 (0) | 2022.09.09 |
[Python] shutil - 폴더 및 파일 복사하기 (0) | 2022.09.09 |
[Python] time - 날짜 및 알고리즘 소요시간 구하는 법 (0) | 2022.08.30 |
[Python] glob - 같은 확장자인 파일만 획득하기 (0) | 2022.08.30 |
댓글