Python ASCII в двоичный

есть ли встроенная функция, которая преобразует ASCII в двоичный файл?

например. преобразует 'P' в 01010000.

Я использую Python 2.6.6

3 ответов


Как насчет вместе?

bin(ord('P'))
# 0b1010000

вы хотите преобразовать байт или символы? Есть разница.

если вы хотите байты, то вы можете использовать

# Python 2.x
' '.join(bin(ord(x))[2:].zfill(8) for x in u'שלום, עולם!'.encode('UTF-8'))

# Python 3.x
' '.join(bin(x)[2:].zfill(8) for x in 'שלום, עולם!'.encode('UTF-8'))

на bin функция преобразует целое число в двоичное. The [2:] полосы ведущих 0b. The .zfill(8) колодки каждый байт до 8 бит.


bin(reduce(lambda x, y: 256*x+y, (ord(c) for c in "Hello world"), 0))

это для нескольких символов