Python使用If,Else基于输入切换显示

时间:2017-03-13 07:00:34

标签: python

我想使用IF / Else或Switch根据我的输入值显示打印文本。另请告诉我如何在下面的代码中使用switch case。

 # OnButtonOK after clicking it, display the input value    
  def OnButtonOK(self):
    Input = self.entrytext.get()
    # self.text.insert(END, Input + '\n')
    # self.scroll.config(Input = self.text.yview)
    print Input
    useroption = atoi(Input)
    # self.OnButtonClick();
    if (useroption == 1):
            print "input is output"
        self.SubMenu1();
    else:
        print "Error:Invalid"

    return;

def SubMenu1(self):
        print 'SubMenu1'
    return;

def SubMenu2(self):
        print 'SubMenu2'
    return;

def SubMenu3(self):
        print 'SubMenu3'
    return;

我只能打印其他部分:

if (useroption == 1):
            print "input is output"
        self.SubMenu1();
    else:
        print "Error:Invalid"

让我知道我哪里错了。

2 个答案:

答案 0 :(得分:0)

这是一个简单的初学者错误,你正在缩进它:

if (useroption == 1):
        print "input is output"
    self.SubMenu1();
else:
    print "Error:Invalid"

应该是

if (useroption == 1):
    print "input is output" # You had an indent too many here
    self.SubMenu1();
else:
    print "Error:Invalid"

Python是缩进敏感的;太多或太少的缩进都会破坏你的代码。

答案 1 :(得分:0)

我认为您的代码中存在缩进问题: Python使用4个空格(你可以使用1个空格,但4个是很好的练习)缩进语言。意味着if / else语句将是这样的:

if a == 1:
    print("A = 1") # 4 spaces w.r.t to above statement
elif a == 2:
    print("A = 2")
elif a ==3:
    print("A = 4")
else:
    print("A = pta nahi")

您可以使用上面的if / else语句作为切换案例,并且还可以解决缩进问题