programing

8자의 UUID 가져오기

javaba 2022. 10. 26. 21:14
반응형

8자의 UUID 가져오기

8글자의 UUID만 가져오려면 어떻게 해야 합니까?아래의 코드 라인을 실행해 보니 36글자의 uuid가 나왔습니다.

id1 = str(uuid.uuid1())

정답

이 질문에 대한 정답은 여기서 답한 바와 같이 uuid는 정의상 16바이트이기 때문에 8글자의 uuid를 생성할 수 없습니다.

UUID의 표준은 RFC 4221에 규정되어 있습니다.형식 섹션에서 첫 번째 단어는 다음과 같습니다.

UUID 형식은 16 옥텟입니다.

나의 원래 답변이 보편적으로 고유한 ID를 생성하지 않을 것이라고 지적해 주셔서 감사합니다.

오래된(잘못된) 답변

처음 8자만 가져가도 돼

'''param id1 = str(param.param1()[:8] ''

그들 모두가 특별하다는 보장은 없다.

다음과 같이 시험해 보십시오.

import string, random

# ''.join() joins the letters from random.choices() into a single Python str of length k.
join=''.join
join(random.choices(string.ascii_letters, k=8)) # Output is like as 'XDCxVAJl'

자원:Python의 문자열 모듈에는 유용한 상수 ascii_lowercase, ascii_대문자, 문자열이 포함되어 있습니다.구두점, ascii_space, string.16진수나 기타 몇 가지.

참고 자료: https://realpython.com/python-random/

오브젝트 타입(python3)에 관계없이 처음 8글자만 사용할 수 있다고 가정하면 다음과 같이 할 수 있습니다.

import uuid
id1 = str(uuid.uuid1())
first_eight=id1[:8]
print(first_eight)

언급URL : https://stackoverflow.com/questions/60511698/get-uuid-of-8-characters

반응형