hexadecimal_string = "AB"
byte_array = bytearray.fromhex(hexadecimal_string)
print(byte_array)
>>> s = 'The quick brown fox jumps over the lazy dog.'.encode('utf-8')
>>> s
b'The quick brown fox jumps over the lazy dog.'
>>> s.hex()
'54686520717569636b2062726f776e20666f78206a756d7073206f76657220746865206c617a7920646f672e'
hex_string = "0xAA"
# "0x" also required
an_integer = int(hex_string, 16)
# an_integer is a decimal value
hex_value = hex(an_integer)
print(hex_value)
#Hex -> Bytes
>>> b'xdexadxbexef'.hex()
'deadbeef'
#Bytes -> Hex
>>> bytes.fromhex('deadbeef')
b'xdexadxbexef'