Комплементарная РНК

Напишите функцию, которая будет находить обратную комплементарную цепочку заданной цепочки рибонуклеиновой кислоты (РНК).

РНК будет представлена в виде строки, содержащей только символы «A», «C», «G» и «U». Это первые буквы названий составных частей нуклеиновых кислот — аденина, цитозина, гуанина и урацила.

Комплементарными друг для друга являются аденин и урацил, гуанин и цитозин (т. е. пары A/U и G/C). Поэтому комплементарные цепочки РНК будут такими:

исходная цепочка -> комплементарная
"AAA" -> "UUU"
"UUU" -> "AAA"
"GGG" -> "CCC"
"CCC" -> "GGG"
"GGAACC" -> "CCUUGG"

Ваша функция должна выстроить правильную комплементарную цепочку, а потом еще и обратить результирующую строку.

Примеры

reverse_complement("GUGU") ➞ "ACAC"
reverse_complement("UCUCG") ➞ "CGAGA"
reverse_complement("CAGGU") ➞ "ACCUG"

Примечание: исходим из того, что инпут всегда будет валидным.

Вариант решения

def reverse_complement(seq):	
    return seq.translate(str.maketrans('AUGC', 'UACG'))[::-1]
python books logo

Английский для программистов

Наш телеграм канал с тестами по английскому языку для программистов. Английский это часть карьеры программиста. Поэтому полезно заняться им уже сейчас

×