def similarity(dna1, dna2):
count = 0
for i in range(len(dna1)):
if dna1.lower()[i] == dna2.lower()[i]:
count += 1
return count / len(dna1)
def best_match(dna_list, dna):
for dna_seq in dna_list:
dna1 = dna_seq
dna2 = dna
dict = {dna_seq: similarity(dna1, dna2)}
return dict
Di best_match saya diberikan daftar yang berisi urutan DNA (dna_list). Dengan menggunakan fungsi di atas saya perlu membandingkan setiap urutan dengan dna (dna) yang diberikan. Kemudian kembalikan urutan DNA dengan kemiripan tertinggi. Saya mencoba membuat kamus untuk menyimpan urutan DNA dengan nilai kesamaannya dan kemudian membandingkan kesamaan dan kemudian mengembalikan urutan yang sesuai. Namun, saya terjebak. Ketika saya menjalankan ini, ia hanya mengembalikan satu urutan DNA dan nilai kesamaan itu; namun, saya diberikan tiga urutan DNA. Saya juga mengalami kesulitan karena daftar urutan DNA yang diberikan (di dna_list) bisa berbeda-beda.
IndentationError
, Anda harus sangat berhati-hati saat menempelkan kode yang diindentasi dengan benar di sini. Jika lekukan Anda salah, kami tidak tahu apakah ini sebenarnya masalah kode Anda atau kesalahan salin/tempel. - person Two-Bit Alchemist   schedule 21.07.2015