【发布时间】:2019-06-15 00:52:29
【问题描述】:
我已经研究这个代码几个小时了,我仍然可以解决它。 在函数内部构建一个永久循环(无限while循环)并在循环内部完成以下操作
我希望它使用一个变量来收集输入,该输入应该是一个整数 'q' 以退出。 它应该检查输入字符串是否是数字(整数),如果是...... 将输入整数添加到报告变量。 如果变量是“A”,则将数字字符添加到由新行分隔的项目字符串中。 如果报告类型为 q, 如果报表类型为“A”,则打印出所有输入的整数项和总和。 如果报告类型为“T”,则仅打印总和 在打印报告(“A”或“T”)后跳出while循环以结束函数。 如果不是数字且不是“Q”,则打印“输入无效”的消息。
def adding_report(report=[]):
report = []
at = input("Choose a report type: 'A' or 'T' : ")
while at.lower() != 'a' and at.lower() != 't':
print('what?')
at = input("Choose a report type: 'A' or 'T' : ")
while True:
re = input("print an integer or 'Q' : ")
if re.isdigit() is True:
report.append(re)
report.append('\n')
elif re.startswith('q') is True:
if at.lower() == 'a' is True:
break
print(report)
print(sum(report))
elif at.lower() == 't' is True:
print(sum(report))
break
else:
pass
elif re.isallnum() is False and re.lower().startswith('q') is False:
print('invalid response.')
else:
pass
adding_report(report=[])
如果有人找到任何修复错误的方法,请告诉我。提前致谢。
【问题讨论】:
-
缩进在 Python 中很重要。您发布的代码没有正确缩进 - 这是您在代码中使用它的方式吗?如果没有,您应该编辑您发布的示例以准确反映您的代码。