
本文将指导你如何在 Python 列表中搜索指定数值范围内的元素。通过修改现有的代码,允许用户输入一个数值范围,并在乘客年龄列表中查找符合条件的乘客。我们将提供详细的代码示例和解释,帮助你理解并应用这种技术。
在开发模拟巴士程序时,经常需要根据乘客的年龄范围进行搜索。例如,我们可能需要查找年龄在 55 到 67 岁之间的乘客。本文将介绍如何修改现有的 Python 代码,以实现根据用户输入的数值范围在列表中进行搜索的功能。
原有的 find_age 函数只能搜索特定年龄的乘客。我们需要对其进行修改,使其能够接受一个年龄范围作为输入,并查找符合该范围的乘客。
以下是修改后的 find_age 函数代码:
立即学习“Python免费学习笔记(深入)”;
def find_age():
try:
if Buss.antal_passagerare > 0:
clear()
print("Passagerarnas åldrar:")
print(Buss.passagerare) # Print out the ages of the passengers
startalder = float(input('Ålder 1: '))
slutalder = float(input('Ålder 2: '))
hitta = [i for i, age in enumerate(Buss.passagerare) if startalder <= age <= slutalder]
if hitta:
found_ages = [Buss.passagerare[i] for i in hitta]
print('Passagerare med ålder {0} hittades på position: {1}'.format(', '.join(map(str, found_ages)), ', '.join(map(str, hitta))))
else:
print('Inga passagerare med åldern mellan {0} och {1} hittades.'.format(startalder, slutalder))
input('Tryck Enter för att gå vidare')
else:
clear()
print('Inga passagerare att söka bland.')
input('Tryck Enter för att gå vidare')
except ValueError:
clear()
print('Felaktig inmatning. Försök igen.')
input('Tryck Enter för att gå tillbaka till menyn')代码解释:
输入年龄范围:
列表推导式搜索:
输出结果:
错误处理:
假设 Buss.passagerare 列表包含以下年龄:[25, 30, 55, 60, 65, 70]。
如果用户输入 Ålder 1: 55 和 Ålder 2: 65,程序将输出:
Passagerare med ålder 55.0, 60.0, 65.0 hittades på position: 2, 3, 4
这表示年龄为 55, 60 和 65 的乘客分别位于列表的索引 2, 3 和 4。
通过修改 find_age 函数,我们成功实现了在 Python 列表中搜索指定数值范围的功能。该功能允许用户输入一个年龄范围,并在乘客年龄列表中查找符合条件的乘客。这在开发模拟巴士程序或其他需要根据数值范围进行搜索的应用程序中非常有用。通过本文提供的代码示例和解释,你可以轻松地将这种技术应用到自己的项目中。
以上就是在列表中搜索指定数值范围:Python 实现教程的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号