Hw14#3
Conversation
There was a problem hiding this comment.
Кажется ридми стал немного outdated :))
There was a problem hiding this comment.
Это стоит удалить уже (как и остальные эти модули)
There was a problem hiding this comment.
Этот код тоже по идее должен был бы быть в biotools.py
| def __getitem__(self, slc) -> str: | ||
| if isinstance(slc, int): | ||
| return self.seq.__getitem__(slc - 1) | ||
| elif isinstance(slc, slice): | ||
| new_slice = slice(slc.start - 1, slc.stop, slc.step) | ||
| return self.seq.__getitem__(new_slice) |
There was a problem hiding this comment.
Ты это специально решила перекодировать? Просто мы кажется этот пример на лекции не разбирали. Если ты сама разобралась - то респект
| def check_alphabet(self) -> bool: | ||
| unique_char_seq = set(self.seq) | ||
| return all(nuc in self.complement_dict for nuc in unique_char_seq) |
There was a problem hiding this comment.
Функционально одно и то же конечно, но кажется все таки не совсем логично использовать complement_dict для проверки алфавита))
| return self.__class__(''.join(comp_seq)) | ||
|
|
||
| def gc_content(self) -> float: | ||
| gc_count = sum(1 for base in self.seq if base.upper() in ['G', 'C']) |
There was a problem hiding this comment.
Оригинальный подход! Можно наверное вообще как нибудь типа:
| gc_count = sum(1 for base in self.seq if base.upper() in ['G', 'C']) | |
| gc_count = sum(base.upper() in ['G', 'C'] for base in self.seq) |
|
|
||
|
|
||
| class DNASequence(NucleicAcidSequence): | ||
| complement_dict = {'A': 'T', 'T': 'A', 'G': 'C', 'C': 'G', 'a': 't', 't': 'a', 'g': 'c', 'c': 'g'} |
There was a problem hiding this comment.
Ну это кажется линтерами должно разбиваться на несколько строк
| def to_rna(self): | ||
| result = ''.join(self.rna_dict[base] for base in self.seq) | ||
| return RNASequence(result) |
There was a problem hiding this comment.
Тут все эти штуки тоже по сути должны быть удалены. Ну и вижу что код не был отрефакторен на основе ревью из прошлого семестра:))
Эта штука, convert_fasta_to_dic, я ее помню 😂
|
|
||
| def check_alphabet(self) -> bool: | ||
| unique_amino_acids = set(self.seq) | ||
| return unique_amino_acids <= self.amino_acids |
There was a problem hiding this comment.
воо, тут же ты не какими нибудь словарями пользуешься, а множеством аминокислот
No description provided.