Python hex() 함수는 정수를 소문자 16진수 문자열로 변환하는 데 사용됩니다. 이 때 “0x”로 접두어가 붙습니다. 또한 hex() 함수에 객체를 전달할 수도 있으며, 이 경우 객체는 정수를 반환하는 __index__()
함수가 정의되어 있어야 합니다. 입력 정수 인수는 이진, 팔진 등 어떤 기본이든 될 수 있습니다. Python은 이를 16진수 형식으로 변환하는 데 주의합니다.
Python hex() 예제
몇 가지 정수를 16진수로 변환하는 간단한 예제를 살펴보겠습니다.
print(hex(255)) # decimal
print(hex(0b111)) # binary
print(hex(0o77)) # octal
print(hex(0XFF)) # hexadecimal
출력:
0xff
0x7
0x3f
0xff
Python hex()와 객체
사용자 정의 클래스를 만들고 hex() 함수를 사용할 수 있도록 __index__() 함수를 정의해 보겠습니다.
class Data:
id = 0
def __index__(self):
print('__index__ function called')
return self.id
d = Data()
d.id = 100
print(hex(d))
출력:
__index__ function called
0x64
전체 Python 스크립트 및 더 많은 Python 예제는 GitHub 리포지토리에서 확인할 수 있습니다.
참고: 공식 문서
Source:
https://www.digitalocean.com/community/tutorials/python-hex