|
发表于 2023-4-7 19:28:08
|
显示全部楼层
本帖最后由 isdkz 于 2023-4-7 19:32 编辑
- def main():
- # 定义一个菜单字典,键表示编号,值表示水果名称
- menu = {
- 1: 'apple',
- 2: 'pear',
- 3: 'orange',
- 4: 'grape',
- 0: 'exit'
- }
- # 定义一个价格字典,键表示水果名称,值表示对应的价格
- prices = {
- 'apple': 3.00,
- 'pear': 2.50,
- 'orange': 4.10,
- 'grape': 10.20,
- }
-
- # 初始化查询次数为0
- query_count = 0
- # 显示菜单
- for key, value in menu.items():
- print(f'[{key}] {value}')
-
- # 当查询次数小于5次时,持续接受用户输入
- while query_count < 5:
- # 接受用户输入的编号,并以空格分割
- input_numbers = input().split()
-
- # 查询次数加1
- query_count += 1
-
- # 遍历输入的编号
- for number in input_numbers:
- # 如果输入的编号为0,将查询次数设为5,结束循环
- if int(number) == 0:
- query_count = 5
- break
- # 根据编号查询水果名称
- fruit = menu.get(int(number), None)
-
- # 如果找到了对应的水果名称,从价格字典中查询对应的价格,否则价格为0
- if fruit:
- price = prices.get(fruit, 0.00)
- else:
- price = 0.00
- # 输出查询到的价格,保留两位小数
- print(f'price = {price:.2f}')
- # 主函数入口
- if __name__ == "__main__":
- main()
复制代码
这个Python代码可以实现题目的要求。先定义一个菜单menu和对应的价格prices,然后遍历输入的编号,
根据编号查询菜单和价格。输入若干个编号,当连续查询次数超过5次、或主动输入0时,程序结束。
|
|