Q:

How to turn a binary string into a byte? 

If I take the letter 'à' and encode it in UTF-8 I obtain the following result:
'à'.encode('utf-8')
>> b'\xc3\xa0'

Now from a bytearray I would like to convert 'à' into a binary string and turn it back into 'à'.  To do so I execute the following code:
byte = bytearray('à','utf-8')
for x in byte:
    print(bin(x))

I get 0b11000011and0b10100000, which is 195 and 160.  Then, I fuse them together and take the 0b part out.  Now I execute this code:
s = '1100001110100000'
value1 =  s[0:8].encode('utf-8')
value2 =  s[9:16].encode('utf-8')
value = value1 + value2
print(chr(int(value, 2)))
>> 憠

No matter how I develop the later part I get symbols and never seem to be able to get back my 'à'.  I would like to know why is that?  And how can I get an 'à'. 

A:

>>> bytes(int(s[i:i+8], 2) for i in range(0, len(s), 8)).decode('utf-8')
'à'

There are multiple parts to this.  The bytes constructor creates a byte string from a sequence of integers.  The integers are formed from strings using int with a base of 2.  The range combined with the slicing peels off 8 characters at a time.  Finally decode converts those bytes back into Unicode characters.