Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save StephenFordham/ee711c1c8102806fd3f94f309a74145e to your computer and use it in GitHub Desktop.
Save StephenFordham/ee711c1c8102806fd3f94f309a74145e to your computer and use it in GitHub Desktop.
Restriction_enzyme_count_complete
import re
import sys
# DNA = input('Please enter your DNA sequence...').upper()
# while re.search('[^AGCT]', DNA):
# DNA = input('Please enter a valid DNA sequence...').upper()
DNA = open('E.coli_genome.fasta').read()
pattern = sys.argv[1].upper()
pattern2 = sys.argv[2].upper()
count_no = int(sys.argv[3])
def restriction_enzyme_func(pattern, pattern2):
result = []
for m in re.finditer(pattern, DNA):
result.append(m.group())
for x in re.finditer(pattern2, DNA):
result.append(x.group())
return result
restriction_site_count = {}
for pat in restriction_enzyme_func(pattern, pattern2):
current_count = restriction_site_count.get(pat, 0)
new_count = current_count + 1
restriction_site_count[pat] = new_count
for pattern, count in restriction_site_count.items():
if count > count_no:
print('The restriction enzyme site ' + pattern + ' is present : ' + str(count) + ' times')
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment