twlitf
Jak w pythonie zdekodować bytes array do stringów w zapisie binarnym?

np.
b'x\e5' -> "11100101"
lub
b'101' -> "101"

jest jakaś magiczna funkcja która obsłuży te dwa przypadki? decode('utf-8) nie działa jak jest w hexie...

#python #programowanie #programista15k
  • Najlepsze
  • Wszystkie komentarze
grlux
grlux
2
redorbiter
@twlitf: to drugie tak jak kolega wyzej napisal, a to pierwsze ja bym tak zrobil:

int.from_bytes(b'\xe5\xf0', 'big')
S.....d
@twlitf tak
redorbiter
@twlitf: bardziej musisz wytlumaczyc, bo nie rozumiem

chat mowi tak, ale nie wiem czy o to Ci chodzi:

def bytes_to_bin_string(data):
return ''.join(format(byte, '08b') for byte
twlitf
twlitf Autor
0
@redorbiter: Chodzi o to, że odbieram dane po porcie szeregowym w postaci bajtów za pomocą Pythona, ale dane te przychodzą w dwóch różnych formatach, ponieważ pochodzą z dwóch różnych urządzeń. Z jednego urządzenia otrzymuję bytearray, w którym bajty są reprezentowane w postaci szesnastkowej z użyciem sekwencji \x, a z drugiego urządzenia otrzymuję bytearray, który jest zwykłym tekstem ASCII, ale ten tekst jest liczbą zapisaną w formacie binarnym.

Potrzebuję przekształcić oba
twlitf
twlitf Autor
0
@Smonk_Da_Wead: To powiedz jak ( ͡° ͜ʖ ͡°)