无法解决Python错误消息

Léo*_* 준영 1 python

代码来自K. Pollari-Malmi关于"编程简介"课程的讲义:

def main():
    print "Ohjelma laskee asuntolainan kuukausierat." 
    rivi = raw_input("Anna lainasumma: ") 
    lainasumma = float(rivi) 
    rivi = raw_input("Anna laina-aika vuosina: ") 
    laina_aika = int(rivi) 
    if laina_aika < 1: 
        print "liian lyhyt laina-aika" 
    else: 
        kk_lkm = 12 * laina_aika 
        rivi = raw_input("Anna korkoprosentti: ") 
        korko = float(rivi) 
        lyhennys = lainasumma / kk_lkm 
        paaoma = lainasumma 
        i = 0 
        print " lyhennys korko yhteensa" 
        while i < kk_lkm: 
            i = i + 1 
            korkoera = korko / 1200.0 * paaoma 
            paaoma = paaoma - lyhennys 
            kuukausiera = korkoera + lyhennys 
            print "%2d. %8.2f %8.2f %8.2f" % \         # mistake probably here
                (i, lyhennys, korkoera, kuukausiera) 
main()
Run Code Online (Sandbox Code Playgroud)

我得到语法错误

SyntaxError: unexpected character after line continuation character
Run Code Online (Sandbox Code Playgroud)

你怎么解决错误信息?

Ale*_*lli 10

几个答案已经为您提供了问题的关键,但我想在可行的情况下为我最喜欢的方式插入Python中的逻辑行延续:

print "%2d. %8.2f %8.2f %8.2f" % (         # no mistake here
            i, lyhennys, korkoera, kuukausiera)
Run Code Online (Sandbox Code Playgroud)

也就是说,而不是像一些答案建议使用额外的括号,你可以利用你已经自然碰巧的任何括号 - 这将告诉Python你也需要逻辑线延续;-)


Tri*_*ych 6

在行继续符后,你不能有任何东西,甚至是空格.

删除空格,或将整行包装在一对括号中. Python隐式连接括号,花括号和方括号之间的行:

print ( "%2d. %8.2f %8.2f %8.2f" % 
        (i, lyhennys, korkoera, kuukausiera) )
Run Code Online (Sandbox Code Playgroud)