Двуликий код

Кодинг-марафон. Задача № 9.

Слово «двуликий» состоит из 8 букв. Байт в двоичном формате имеет 8 бит. Байт может представлять символ.

Мы можем использовать слово «двуликий» для выражения слов в двоичном формате, если используем заглавные буквы как единицы, а строчные — как нули.

Создайте функцию, которая будет переводить слово в виде обычного текста в «двуликий код».

Примеры

translator("Hi") ➞ "дВулИкий дВУлИкиЙ"

translator("123") ➞ "двУЛикиЙ двУЛикИй двУЛикИЙ"

Примечание: переводите слова, написанные латиницей, и цифры. За перевод кириллицы — дополнительный балл.

Решение

def translator(txt):
    word = 'двуликий'
    res = []

    for char in bytearray(txt, 'utf-8'):
        b = '{:0>8b}'.format(char)
        new = ''.join(word[i].upper() if b[i] == '1' else word[i] for i in range(8))
        res.append(new)
    return ' '.join(res)
Прокрутить вверх