仅当标题为真时才打印标题

时间:2018-03-07 03:27:04

标签: python formatting

如果循环得到结果,我希望标题打印一次但如果没有则打印不打印。我从这里得到了将标题设置为True或False的提示,但我现在尝试在循环中使用它,这似乎不起作用。

header = False

if header==True:
    print('{:10} {:10}'.format('Room#','Fee'))

match_count = 0

for apt in aptList:
    if userInput >= htl.room and userInput <= htl.fee:
        header=True ## shouldnt this statement get it to print?
        print(htl.getApt())
        match_count += 1

if match_count == 0:
    header=False

此代码不会仅打印结果标题。你能否像我一样在循环中将变量设置为不同的值?

2 个答案:

答案 0 :(得分:0)

您需要在设置为True后打印(标题),或者如果您只想在那里打印,则需要将其设置为true。

答案 1 :(得分:0)

我相信这不会起作用,因为你在开头将一个声明定义为@Order(2147483640),然后代码的下一部分是一个if语句,如果标题是False则说明如下:但你刚才在前面的陈述中定义了True

因此,if语句永远不会执行,因为它永远不会返回检查标头变量是否已更改。你在for循环中将头变量声明为False,但是程序永远不会循环回来看if if语句现在要在第一个if语句中打印语句。

我会将if语句放在for循环中,以便它可以执行它。

True