python - 如何修复这个while循环,让它在应该的时候中断?
问题描述
因此,当我用它回答时,l[0]
它不会从 y 循环中跳出,但是当我用它回答时,l[1]
它会跳出 while 循环。我怎样才能使这两个选项都让我脱离 y 循环
while y == True:
B=input("Klockan är 07:00 och du börjar snart, vad för slags frukost skulle du vilja
ha? smörgås eller pannkakor: ")
if B == l[0]:
y=False
b=True
while b == True:
D=input("utifrån det du har valt skulle jag villa rekommendera juice eller mjölk
vad vill du ha?")
if D == m[0]:
print ("ok, ha en trevlig måltid")
break
if D == m[1]:
print ("ok, ha en trevlig måltid")
b=False
break
y=False
else:
b=True
print ("Du har inte svarat på vilken drick du vill ha eller så har du använt
stora bokstäver, var vänlig att svara igen")
if B == l[1]:
ö=True
y=False
while ö == True:
D=input("utifrån det du har valt skulle jag villa rekommendera saft eller vatten
vad vill du ha?")
if D == m[2]:
print ("ok, ha en trevlig måltid")
ö=False
break
y=False
if D == m[3]:
print ("ok, ha en trevlig måltid")
ö=False
break
y=False
else:
ö=True
print ("Du har inte svarat på vilken drick du vill ha eller så har du använt
stora bokstäver var vänlig svara igen
else:
y=True
print ("Du har inte svarat på vilken rätt du vill ha eller så har du använt stora
bokstäver, var vänlig att svara igen")
解决方案
Easy, you need to delete one line.
Your program after finishing l[0]
the l[1]
will be false so it will run the else {}
and it will set y=true
I hope that makes sense.
else:
y=True < ====== delete this
print ("Du har inte svarat på vilken rätt du vill ha eller så har du använt stora
bokstäver, var vänlig att svara igen")`
Also you can fix your program by adding else if B == l[1]:
instead of if B == l[1]:
推荐阅读
- session-management - 事件跟踪完整性
- erlang - gen_server:start/4 中 `Func` 的类型签名是什么?
- jenkins - 如何递归地在 Jenkins 中获取特定工件,同时排除子目录?
- c# - 使用自然 lambda 类型进行隐式转换
- python - ModuleNotFoundError:Python 中没有名为“plyer”的模块
- kubernetes - Kubernetes Dashboard 工作负载状态饼图颜色含义
- reactjs - MaterialUI 图标和构建包大小
- kubernetes - 无法在 GCP Web 界面中创建集群或节点池?
- c++ - 如何实例化 boost 类`boost::posix_time::seconds` C++ 类?
- jsf - Primefaces 10:删除文本区域中的换行符