ITI0140:Ülesanne 5

Allikas: Kursused
Mine navigeerimisribale Mine otsikasti

Still a better love story than Twilight

Tudeng Bella istub geneetika praktikumis ja valmistab ette tunnitööd. Mõtted on tal aga eelmisel õhtul toimunud maagilisel kohtingul Eeduga, mil Verekeskuses töötav hurmur näitas näitsikule kohalikku loodust. Tähelepanematusest aga kleebib Bella valed sildid geneetika praktikumis kasutatud tuubidele, kus on erinevatest organismides eraldatud draculin'i geen. Paanikas ja ajahädas otsustab Bella abi küsida bioinformaatik Jakobilt, kes kirjutaks talle programmi, mis kiirelt tuvastab, millise järjestusega geen tuubis kuulub millisele organismile.

Sinu ülesandeks on kirjutada programm, mis võtab failist "EX05_DNA" DNA järjestused, transkribeerib neist RNA ning neist omakorda transleerib valgu kasutades molekulaarbioloogia põhiseadusi (RNA transkribeerib vastasahelalt tRNA kujule). Valgujärjestuste korral tuleb arvestada aminohapete nimetuste ühetähelisi akronüüme (näiteks seriin - S, lüsiin - K jne). Saadud valgujärjestuste vastsed organismide ladinakeelsed nimed tuleb leida failist "EX05_Protein.csv" ja salvestada saadud tulemused "dictionary"sse, kus võti (key) on organismi ladinakeelne nimi ja väärtus (value) on arv, mitu korda esines tema DNA-d failis "EX05_DNA.txt".

Tehilised nõuded

Kogu lahendus peab olema failis EX05.py, mis tuleb panna kataloogi EX05. See tähendab, et fail asub salves kohal EX05/EX05.py

Programmis tuleb kasutada vähemalt nimetatud funktsioone muutmata kujul:

read_dna_data_from_file(filename) => string dna

transcribe_dna_to_rna(dna) => string rna

translate_rna_to_protein(rna) => string protein
determine_species(classification_file) => dict of species and count

Näide:

read_dna_data_from_file(filename) => 'TCCTGAAG'

transcribe_dna_to_rna(dna) => 'AUGUUUAAA'

translate_rna_to_protein(rna) => 'KLDVVD'

determine_species(classification_file) => {'Homo sapiens':5,'Mus musculus':3...}