设置循环时出错!虽然/如果/否则/否则?

时间:2019-02-10 22:17:41

标签: python loops while-loop

问题是相当少的知识。但是这是我的问题。

我试图做一会儿循环来弄清楚客户想要选择哪种语言

我试图通过一个while循环设置一个简单的“ Question-Answer”脚本。继续操作Var A(varr),然后中断Var B(othervarr)

Python说“循环未正确设置继续” 或“打破循环”

所以现在我的问题不是要像您一样给我一个出色的代码(我什至不明白),我的问题是while循环和if / else之间有什么区别?使用if / else语句会更好吗?以及如何分散客户选择“ A”(为a获取脚本)或选择“ B”(为b获取脚本)的可能性?

提前感谢您的时间

varr = "german"
othervarr = "english"

print("Hello everybody. This is the first Version of 'Ismypasswordsafe' ! If you want to enter in german, type german below, if you want to continue in english, type english below")
while input() == varr:
continue;
print("Du hast dich fuer Deutsch entschieden !")
if input() == othervarr:
break;
print("Alright you choosed English")

3 个答案:

答案 0 :(得分:1)

缩进代码,然后要将输入保存到变量中。选定语言后,您要打印两种方法之一,如果A否则B则要打印

varr = "german"
othervarr = "english"

print("Hello everybody. This is the first Version of 'Ismypasswordsafe' ! If you want to enter in german, type german below, if you want to continue in english, type english below")
lang = input()

while not (lang == "english" or lang == "german"):
  print("You must enter 'english' or 'german'")
  lang = input()

if lang == "english":
  print("Alright you choosed English")
else:
  print("Du hast dich fuer Deutsch entschieden !")

编辑-根据评论进行循环更新,直到选择了两种语言之一。

虽然是循环,但会在条件为true时循环 。所以用英语:lang不是英语,不是德语循环,要求更多输入。

希望这很有道理!

答案 1 :(得分:0)

  1. 始终将您的input()分配给一个变量。
  2. 始终缩进代码。
  3. 根据您的问题,while和if / else完全不同。前者是一个循环,即,如果if / else是一个条件语句,即“如果”满足条件,则有助于一遍又一遍地执行一组特定的操作,而另一个则是“ else”。

您可能需要阅读文档以了解更多信息。

Python Documentation

答案 2 :(得分:0)

要回答您的问题,您不想为此使用while循环,因为它只会在条件为真时运行。

因此输入您的代码

while input() == varr:
如果用户输入德语,

很好,但是如果用户输入英语,则永远不会开始。

使用任何循环之外的输入都会更好,然后只需使用if语句检查输入即可。

在if之后执行else的问题是它没有真正检查其他输入,只是说如果不是一个输入就必须是另一个输入。

请参见下文。

varr = "german"
othervarr = "english"

language = input("Hello everybody. This is the first Version of 'Ismypasswordsafe' ! If you want to enter in german, type german below, if you want to continue in english, type english below")

if language == varr:
    print("Du hast dich fuer Deutsch entschieden !")
if language == othervarr:
    print("Alright you choosed English")

当然要注意的另一件事是,缩进在python中非常重要,它决定了代码的执行顺序。

您最初的错误“继续循环设置不正确”是因为继续与while保持一致。

应该是

while input() == varr:
    continue;

现在python知道继续在while循环内。