# Computational biology at CSU

## DSCI 512: RNA-seq

### Questions?

assignment3key

olgioAnalyzer.py
```'''
Author: Tai Montgomery, Oct. 10, 2018

Prints to the terminal basic stats for typical primer
length oligos. Melting tempurate (Tm) may not be accurate
in some instances.

Usage: python3 oligoAnalyzer.py

To exit the program, hit return.
'''

def oligo_analyzer():
'''
Print basic stats for DNA primers.
Input (at prompt): a DNA or RNA sequence 18-25 nt long.
'''

while True:
seq = input('Enter a sequence: ')
original = ''
revcomp = ''
gc_sum = 0
non_nt = False

if seq == '':
break

for nt in seq:
if nt == 'A' or nt == 'a':
original += 'A'
revcomp = 'T' + revcomp
elif nt == 'T' or nt == 't':
original += 'T'
revcomp = 'A' + revcomp
elif nt == 'C' or nt == 'c':
original += 'C'
revcomp = 'G' + revcomp
gc_sum += 1
elif nt == 'G' or nt == 'g':
original += 'G'
revcomp = 'C' + revcomp
gc_sum += 1
elif nt == 'U' or nt == 'g':
original += 'T'
revcomp = 'A' + revcomp
gc_sum += 1
else:
non_nt = True

tm = 64.9 + 41 * (gc_sum - 16.4) / len(original)

if non_nt:
print("\n\nWarning: Non-nt characters removed!!!")

print("\nOriginal Sequence:    " + original)
print("Reverse Complement:   " + revcomp)
print("Length:               " + str(len(original)) + " nt")
print("GC Content:           " + str(int(gc_sum/len(original)*100)) + " %")
print("Tm:                   " + str(int(tm)) + " ˚C\n")

if __name__ == '__main__':
oligo_analyzer()										``` 