代码来自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你也需要逻辑线延续;-)
在行继续符后,你不能有任何东西,甚至是空格.
删除空格,或将整行包装在一对括号中. Python隐式连接括号,花括号和方括号之间的行:
print ( "%2d. %8.2f %8.2f %8.2f" %
(i, lyhennys, korkoera, kuukausiera) )
Run Code Online (Sandbox Code Playgroud)