How to convert bytearray with non-ASCII bytes to string in python?
Question: I don't know how to convert Python's bitarray to string if it contains non-
ASCII bytes. Example:

    
    
    >>> string='\x9f'
    >>> array=bytearray(string)
    >>> array
    bytearray(b'\x9f')
    >>> array.decode()
    Traceback (most recent call last):
      File "<stdin>", line 1, in <module>
    UnicodeDecodeError: 'ascii' codec can't decode byte 0x9f in position 0: ordinal not in range(128)
    

In my example, I just want to somehow get a string '\x9f' back from the
bytearray. Is that possible?


Answer: In Python 2, just pass it to `str()`:

    
    
    >>> import sys; sys.version_info
    sys.version_info(major=2, minor=7, micro=8, releaselevel='final', serial=0)
    >>> string='\x9f'
    >>> array=bytearray(string)
    >>> array
    bytearray(b'\x9f')
    >>> str(array)
    '\x9f'
    

In Python 3, you'd want to convert it back to a `bytes` object:

    
    
    >>> bytes(array)
    b'\x9f'
    

