在if,elif语句中使用变量

时间:2018-12-05 11:04:12

标签: python

我想知道是否可以在if语句中使用变量。我的代码很长,我想使用变量和if语句使其简短。请参见下面的代码。我正在Ubuntu上运行代码。

number = "" #can be any number
button = "" #1 or 0

if (number == '%s' and button == 1 % (number)):
    print "something"
elif (number == '%s' and button == 0 % (number)):
    print "something"

它没有获取数字变量,我想我缺少了什么还是不可能?

我的代码,最多可包含任何所需的if和elif:

number = "" #can be any number
button = "" #1 or 0

if (number == 1 and button == 1):
    print "something +1"
elif (number == 1 and button == 0):
    print "something -1"

if (number == 2 and button == 1):
    print "something +2"
elif (number == 2 and button == 0):
    print "something -2"

if (number == 3 and button == 1):
    print "something +3"
elif (number == 3 and button == 0):
    print "something -3"

我希望我可以将其简化为一段较短的代码,而不是复制并粘贴相同的if / elif。

1 个答案:

答案 0 :(得分:0)

是的,这很容易缩短,因为您只想打印我们需要检查的数字就是按钮,就像这样:

if(button == 0):
    print "something -%d" % (number)
elif(button == 1):
    print "something +%d" % (number)

%d告诉python期望打印一系列数字,而%(number)只是简单地将字符串格式化为我们要打印的内容。我可以看到您正在从打印语句中使用python 2,因此请查看here以了解更多信息。

具体来说,您应该使用"something +{}".format(number),因为这样做是正确的新方法,但是由于您在我坚持使用这些百分比之前已经清楚地看到了这些百分比。

让我知道我还能为您做点什么。