任务问题:
”在程序中添加一个重复菜单,以询问用户他们想要的数据片段 输入号码后查看。”
我创建了一个while循环,该循环已成功打印出菜单的第一部分,即最大值。但是,在最小值循环后输入“ 2”时,未显示数字只会循环菜单字符串
annoyinglist = []
count = 0
while True:
a = input ("Enter a number: ")
if a == "":
break
else:
a = int (a)
annoyinglist.append (a)
count = count + 1
b = 1
while b == int(input("Which option would you like: \n 1 - The biggest number entered \n 2 - The smallest number entered \n 3 - Number of values entered \n 4 - Total of values entered \n 5 - Average (mean) of values entered \n 0 - Exit \n ")):
if b == 1:
print (max(annoyinglist))
if b == 2:
print (min(annoyinglist))
根据任务,结果应如下所示:
> 输入一系列数字:
5
3
7
4
5
8
>
您想要哪个选项:
1-输入的最大数字
2-输入的最小数字
3-输入的值数
4-输入的值总计
5-输入的平均值(平均值)
0-退出
5
输入的值的平均值(均值):5.333333333333333333
您想要哪个选项:
1-输入的最大数字
2-输入的最小数字
3-输入的值数
4-输入的值总计
5-输入的平均值(平均值)
0-退出
3
输入的值数:6
您想要哪个选项:
1-输入的最大数字
2-输入的最小数字
3-输入的值数
4-输入的值总计
5-输入的平均值(平均值)
0-退出
0
退出
答案 0 :(得分:0)
只需更改最后一个while
循环:
annoyinglist = []
count = 0
while True:
a = input ("Enter a number: ")
if a == "":
break
else:
a = int (a)
annoyinglist.append (a)
count = count + 1
while True:
b_str = input("Which option would you like: \n 1 - The biggest number entered \n 2 - The smallest number entered \n 3 - Number of values entered \n 4 - Total of values entered \n 5 - Average (mean) of values entered \n 0 - Exit \n ")
b = int(b_str if b_str else 0) #so that an empty string stops the loop
if b == 1:
print (max(annoyinglist))
elif b == 2:
print (min(annoyinglist))
else:
break
问题是:首先从b=1
开始,然后要求2
,您就会立即发出while
条件的嘴巴!