如果其他语句为true,则不打印true语句

时间:2020-10-07 23:05:47

标签: python

我正在尝试写这个小东西,在其中给a赋一个值,直到它与b匹配并赢了。因此,我对ifa>b使用了a<b状态存储器。 if a+1==b的“你在附近”被打印出来,显然a<b的对应语句也被打印了出来,但是我不希望这样。如果a+1==ba<b都为真,如何只命令打印“你在附近”而没有其他语句?

我在这里:

b = 5
a = None
c = 1
while a != b:
    a = int(input('choose'))
    if a +c ==b:
        print ('almost there')
    if a < b:
        print('low')
    if a > b:
        print ('high')

2 个答案:

答案 0 :(得分:0)

如果只想运行条件的一个分支,请使用elif

b = 5
a = None
c = 1
while a != b:
    a = int(input('choose'))
    if a +c ==b:
        print ('almost there')
    elif a < b:
        print('low')
    elif a > b:
        print ('high')

答案 1 :(得分:0)

b = 5
a = None
c = 1
while a != b:
    a = int(input('choose'))
    if a +c ==b:
        print ('almost there')
    elif a < b:
        print('low')
    elif a > b:
        print ('high')

执行在if语句处分支,并在elifelse中继续 新的if表示过去分支的结束,而新分支的开始。