Я пытаюсь написать небольшой код, используя «def», чтобы создать свою собственную функцию в Python. Эта функция проверяет, является ли строка, предоставленная пользователем, последовательностью ДНК или нет. Поскольку ДНК может состоять только из кислот, сокращенно обозначенных как A, C, G, T, моя функция должна принимать только строки, состоящие из этих букв, и возвращать True, в противном случае она должна возвращать False. Мой код делает это до некоторой степени, но в некоторых случаях, таких как 'ACGTGATTCGF' или 'CGGCGAACCACCaxCCAzAatccG' или '' ', он возвращает True вместо False. Я не понимаю, почему. Вот код:
def is_this_dna(sequence):
acids = ["A", "C", "G", "T"]
for c in sequence:
if c in acids:
return True
else:
return False
#code driver
my_dna = str(input("Enter your DNA sequence:"))
print(is_this_dna(my_dna))