def to_str(data, separator=":"):
    """Stringify hexadecimal input;

    :param data: Raw data to print
    :type data: str or bytes or bytearray
    :param separator: The separator to be used **between** the two digits hexadecimal data.
    :type separator: str

    >>> to_str(bytes([1,16,5]))
    "01:0F:05"
    >>> to_str(bytes([1,16,5]), separator="")
    "010F05"
    """
    if type(data) is str:
        return separator.join(["{:02x}".format(ord(c)) for c in data])
    if type(data) in [bytes, bytearray]:
        return separator.join(["{:02x}".format(c) for c in data])
    else:
        return str(data)