我正在编写一个函数,它对元组列表(员工记录)进行搜索查询,然后根据查询参数进行输出。例如,在我的问题中,我搜索的薪资范围最小为30000,最大为100000,我希望这会输出此薪资范围内的工作人员姓名,但它会给出未找到结果的输出,这是不正确的,因为此薪资范围内有许多工作人员
作为比较,最小值为0和最大值为100000将输出所有正确的记录,但是,当将最小值置于30000以上时,始终不会输出任何结果,这实际上是正确的,因为元组列表中有许多员工工资超过30000
以下是我认为导致问题的部分代码(不发布整个代码,因为这是一个课程项目,我不想鼓励剽窃我的作品):
这实际上应该会输出结果,因为有员工在这个工资范围内,但很明显代码中有错误,我看不出这是什么
我希望有人能帮助我,这已经困扰了我一段时间,我真的找不到解决办法
我认为您的程序在处理第一个元组后退出。第一个元组是否超出薪资范围?如果是这样,它将跳过If语句并转到elif。querFound仍然为false,x仍然为0,因此它将打印并退出
我的建议是将整个while循环替换为以下for循环:
相关问题 更多 >
编程相关推荐