Напишите функцию, которая будет находить обратную комплементарную цепочку заданной цепочки рибонуклеиновой кислоты (РНК).
РНК будет представлена в виде строки, содержащей только символы «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]