def get_melt_temp(length=35, max_repeat_nuc=5, num=100): '''Gets melting temps.''' melt_tmps = [] seqs = [sequence_utils.get_random_dna(length, max_repeat_nuc) for _ in range(num)] for idx, seq in enumerate(seqs): try: melt_tmps.extend([sequence_utils.get_melting_temp(seq, dna2, strict=False) for dna2 in seqs[idx + 1:]]) except ZeroDivisionError, err: # Take no action print err
def _get_melting_temp(query, subject): '''Gets melting temp.''' dna1 = '' dna2 = '' for nucs in zip(query, subject): if nucs[0] == '-': dna1 = dna1 + sequence_utils.get_comp(nucs[1]) else: dna1 = dna1 + nucs[0] if nucs[1] == '-': dna2 = dna2 + sequence_utils.get_comp(nucs[0]) else: dna2 = dna2 + nucs[1] return sequence_utils.get_melting_temp(dna1, dna2, strict=False)