我正在为reddit机器人制作一个程序。该程序的一部分要求我在文件中搜索查询,以防止重复发布。以下是我的代码:
def search (filetosearch,query):
with open(filetosearch, 'r') as inF:
for line in inF:
if len(str(line)) == 0 | query not in line:
return False
break
else:
return True
break
无论何时我运行它,它都不会返回任何结果!为什么要跳过返回语句? 我试图搜索的文件是空的
如果文件是空的,那么您永远不会进入
for
循环,因为循环没有任何东西可以迭代只需在该边缘情况的函数末尾添加一个
return False
当一行与查询不匹配时,您也不想返回,只需循环到下一行即可:
注意
break
语句是多余的;当执行return语句时,函数立即退出,永远不会到达带有break
语句的下一行相关问题 更多 >
编程相关推荐