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