如何在我的文档测试中只为完整的单词匹配返回 TRUE?



如果物种名称以quercus开头,我有一个文档测试来返回TRUETRUE但如果给定的物种名称包含拼写错误(例如quercuss(。如何确保不仅返回TRUE以该物种名称开头并且仅与完整单词匹配?

def is_an_oak(name):
""" Returns True if name is starts with 'quercus'""" 
return name.lower().startswith('quercus')

我尝试在单词后留一个空格,但在脚本中进一步使用该函数时省略了结果:

def is_an_oak(name):
""" Returns True if name is starts with 'quercus'""" 
return name.lower().startswith('quercus ')

这应该可以解决问题:

def is_an_oak(name):
""" Returns True if first word in name is 'quercus'""" 
return name.split()[0].lower() == 'quercus'

编辑考虑 OP 评论: 我添加的是用空格(.split()(分割字符串,然后取第一个单词([0](并对其进行比较。

用于获取单词;

import re
def is_an_oak(name):
""" Returns Name if name is 'quercus'""" 
return re.match("^[qQ]uercus*",name).string

用于获取真/假

import re
def is_an_oak(name):
""" Returns True if name is 'quercus'""" 
if re.match("^[qQ]uercus*",name):
return True
else:
return False

相关内容

最新更新