python - 如果条件为真,如何跳过一行代码?
问题描述
当我输入一个不在 1 和 7 之间的数字时,它会显示“错误!请输入一周中的某一天的数字 (1-7):”,但在输入某些内容后,它会显示“输入一个数字 (1- 7) 星期几:"。我想要“错误!请为星期几输入一个数字(1-7):”当数字不在 1 之间时替换“输入一个数字(1-7)作为星期几:” -7 被输入。我之前尝试过的只是将 print(error!) 放在 else 之后,但我不喜欢那个错误!出现在上面输入一个数字。有没有办法让它们出现在同一行?顺便说一句,我的教授要求我使用 if-elif-else 语句,并且代码是一个连续循环。
keep_going = 'y'
while keep_going == 'y':
day = int(input('Enter a number (1-7) for the day of the week:'))
if day == 1:
print('Monday')
elif day == 2:
print('Tuesday')
elif day == 3:
print('Wednesday')
elif day == 4:
print('Thursday')
elif day == 5:
print('Friday')
elif day == 6:
print('Saturday, Happy Weekend!')
elif day == 7:
print('Sunday, Happy Weekend!')
else:
int(input('Error! Please enter a number (1-7) for the day of the week:'))
解决方案
你忘记了代码最后一行的赋值。的值day
永远不会更新。
day = int(....
顺便说一句,您也永远不会更新 的值keep_going
。你的循环永远不会停止。最后,您应该使用日期名称列表并按索引访问名称,而不是使用 8 路if
语句。
推荐阅读
- json - 如何在飞镖颤振中将json字符串转换为json对象?
- woocommerce - 通过 API 从 WooCommerce 向外部系统发送订单详细信息
- javascript - Javascript拆分错误:未捕获的TypeError:无法读取未定义的属性“拆分”
- git - 使用 git log 命令后经常(但不总是), : 显示在我的终端窗口上,它只是变得无响应
- reactjs - 如何使用通过 ajax/axios api 调用接收的数据初始化 redux-form 字段?
- c# - 如何根据某些条件打开/关闭控制器的授权
- uicollectionview - 删除集合视图的顶部栏
- angular - 用“takeWhile”“扩展”,也应用一个限制,就像“take”一样
- python-3.x - RecycleView 和 ScreenManager 问题
- java - 在 Java 中使用 JsonPath 解析 JSON 中的数组