I have been stuck on this for hours. When I run it it says this
dna.py exists
:) correctly identifies sequences/1.txt:) correctly identifies sequences/2.txt:( correctly identifies sequences/3.txt expected "No match\n", not "Bob\n":) correctly identifies sequences/4.txt:) correctly identifies sequences/5.txt:) correctly identifies sequences/6.txt:( correctly identifies sequences/7.txt expected "Ron\n", not "Petunia\n":) correctly identifies sequences/8.txt:) correctly identifies sequences/9.txt:) correctly identifies sequences/10.txt:) correctly identifies sequences/11.txt:) correctly identifies sequences/12.txt:( correctly identifies sequences/13.txt expected "No match\n", not "Petunia\n":) correctly identifies sequences/14.txt:) correctly identifies sequences/15.txt:( correctly identifies sequences/16.txt expected "No match\n", not "Albus\n":) correctly identifies sequences/17.txt:( correctly identifies sequences/18.txt expected "No match\n", not "Lavender\n":) correctly identifies sequences/19.txt:) correctly identifies sequences/20.txtHere is the code:
def main(): if len(sys.argv) != 3: print("Usage: python dna,py data.csv sequence.txt") sys.exit(1) database = [] with open(sys.argv[1], 'r') as file: reader = csv.DictReader(file) for row in reader: database.append(row) with open(sys.argv[2], 'r') as file: dna_sequence = file.read() subsequence = list(database[0].keys())[1:] result = {} for subsequences in subsequence: result[subsequences] = longest_match(dna_sequence, subsequences) for person in database: match = 0 for subsequence in subsequences: if int(person[subsequences]) == result[subsequences]: match += 1 if match == len(subsequences): print(person["name"]) return print("No Match") returnA detailed explanation on where I when wrong.