I have this string: Hello world !!
and I want to print it using Python as 48:65:6c:6c:6f:20:77:6f:72:6c:64:20:21:21
.
hex()
works only for integers.
How can it be done?
Your can transform your string to a int generator, apply hex formatting for each element and intercalate with separator:
>>> s = "Hello world !!"
>>> ":".join("{:02x}".format(ord(c)) for c in s)
'48:65:6c:6c:6f:20:77:6f:72:6c:64:20:21:21