Zac*_*ack 0 python string function
不知道我在这里做错了什么.任何帮助,将不胜感激.当我输入包含不良变量(如Z)的DNA序列时,我会继续返回True.有人能指出原因吗?
谢谢
def is_valid_sequence(dna):
""" (str) -> bool
>>> is_valid_sequence('ATCG')
True
>>> is_valid_sequence('AZT')
False
>>> is_valid_sequence('atcg')
False
Returns a boolean result based on whether dna is a valid
dna sequence.
"""
for char in dna:
if char in "TCGA":
return True
else:
return False
Run Code Online (Sandbox Code Playgroud)
你将在循环的第一次迭代中返回:return 结束函数,循环体中的所有路径都包含一个return.你可能想要
for char in dna:
if char not in 'TCGA':
return False
return True
Run Code Online (Sandbox Code Playgroud)
或者,更多的Python:
return all(char in 'TCGA' for char in dna)
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
101 次 |
| 最近记录: |