Def locate_substring(dna_snippet, dna): This function takes in two strings, dna_snippet and dna, where dna_snippet is a substring of dna, and returns all locations of the substring as a list of integers. In other words, dna_snippet may exist in multiple locations within dna; you should return the beginning index position of each occurrence of dna_snippet inside of dna. Example: * Sample DNA snippet (substring): "ATAT" * Sample DNA string: "GATATATGCATATACTT" * The returned position list: [1, 3, 9]

Respuesta :

Answer:

In Python. The function is as follows:

def locate_substring(dna_snippet, dna):

   res = [i for i in range(len(dna_snippet)) if dna_snippet.startswith(dna, i)]  

   print("The returned position list : " + str(res))

Explanation:

This iterates defines the function

def locate_substring(dna_snippet, dna):

Check for all occurrence

   res = [i for i in range(len(dna_snippet)) if dna_snippet.startswith(dna, i)]  

print all occrrence

   print("The returned all position list : " + str(res))

Following is the Python program to the given question.

Python

According to the question,

DNA Series: GATATATGCATATACTTDNA

Snippet: ATAT

Program: def locate_substring (dna_snippet, dna):

start = 0 while True: start = dna.

find(dna_snippet, start) #finding the first occurrence of dna_snippet in dna.

if start == -1: return # if dna.find() returns -1 yield start #Resumes next execution start += 1dna=input ("Enter the DNA sequence: ") dna_snippet=input

("Enter the DNA snippet: ") print(list(locate_substring(dna_snippet,dna )))

Program Explanation: Defining a function.

An infinite loop is being utilized just to produce the indexes from which dna snippet begins.

Determining the initial occurrence of dna snippet inside dna. storing the new occurrences of dna snippet throughout the starting point.

Whenever dna.find() returns minus one, it means there was no occurrence identified and the method should be exited.

Find out more information about Python here:

https://brainly.com/question/26497128