为什么Python不打印我的代码?

时间:2015-10-08 14:20:17

标签: python

如果这很愚蠢,但我一直在寻找约30分钟并且无法看清我做错了什么,我道歉。

    sequence.DefaultOrMax(s => (int?)s.Id);

它抱怨打印期望缩进块,但它是缩进的!

错误消息:

def biggestnumber( num1, num2 ):
    if num1 > num2:
        print num1, "is greater than", num2
    else:
        print num2, "is greater than", num1

biggestnumber(45, 21)

3 个答案:

答案 0 :(得分:1)

您不需要在print语句周围添加()。代码与上面的代码完全相同,并且已经过测试。问题是你正在混合标签和空格。如果在上面列出的print语句周围放置(),它实际上会在控制台中打印它们。

double AsDouble(string input)
{
    switch (input)
    {
        case "TRUE": return 1.0;
        case "FALSE": return 0.0;

        //any other special cases

        default: return Convert.ToDouble(input); //may still throw!
    }
}

您的代码打印如下:

>>> (45, 'is greater than', 21)

def biggestnumber( num1, num2 ):
    if num1 > num2:
        print num1, "is greater than", num2
    else:
        print num2, "is greater than", num1

biggestnumber(45, 21)

答案 1 :(得分:-1)

在你的largestnumber()函数的第3行试试这个:

print "%d is greater than %d"%(num1, num2)

答案 2 :(得分:-1)

标签或空格对我没什么影响,只需在打印功能周围放置()就可以了。

def biggestnumber(num1, num2):
        if num1 > num2:
            print (num1, "is greater than", num2)
        else:
            print (num2, "is greater than", num1)

biggestnumber(45, 21)

在线演示: https://repl.it/BOkX

在我的ide上,这个错误通常意味着我有一个ascii未打印的字符,可以通过重写行或用符号显示未打印的字符来修复。