我正在使用这个Python程序的问题我正在创建数学,工作和解决方案,但我得到语法错误:“python中的行继续符后面的意外字符”
这是我的代码
print("Length between sides: "+str((length*length)*2.6)+" \ 1.5 = "+str(((length*length)*2.6)\1.5)+" Units")
我的问题是 \ 1.5 我试过 \ 1.5 但它不起作用
使用python 2.7.2
答案 0 :(得分:12)
除法运算符为/
,而不是\
答案 1 :(得分:6)
反斜杠\
是错误消息所讨论的行继续符,在它之后,只允许换行字符/空格(在下一个非空格继续“中断”行之前。
print "This is a very long string that doesn't fit" + \
"on a single line"
在字符串之外,反斜杠只能以这种方式出现。对于除法,您需要斜杠:/
。
如果你想在字符串中写一个逐字反斜杠,可以通过加倍来逃避它:"\\"
在您的代码中,您使用了两次:
print("Length between sides: " + str((length*length)*2.6) +
" \ 1.5 = " + # inside a string; treated as literal
str(((length*length)*2.6)\1.5)+ # outside a string, treated as line cont
# character, but no newline follows -> Fail
" Units")
答案 2 :(得分:2)
除法运算符为/
而不是\
。
此外,反斜杠在Python字符串中具有特殊含义。要么用另一个反斜杠来逃避它:
"\\ 1.5 = "`
或使用原始字符串
r" \ 1.5 = "
答案 3 :(得分:1)
您必须在继续字符后按Enter键
注意:连续字符后的空格会导致错误
cost = {"apples": [3.5, 2.4, 2.3], "bananas": [1.2, 1.8]}
0.9 * average(cost["apples"]) + \ """enter here"""
0.1 * average(cost["bananas"])
答案 4 :(得分:0)
那么,你试着做什么?如果要使用除法,请使用“/”而不是“\”。 如果是其他内容,请详细解释一下。
答案 5 :(得分:0)
正如其他人已经提到的那样:除法运算符是 / 而不是* * 。 如果你想在字符串中打印* * 字符,你必须逃避它:
print("foo \\")
# will print: foo \
我想要打印你想要的字符串我认为你需要这个代码:
print("Length between sides: " + str((length*length)*2.6) + " \\ 1.5 = " + str(((length*length)*2.6)/1.5) + " Units")
这个是上面的可读版本(使用格式方法):
message = "Length between sides: {0} \\ 1.5 = {1} Units"
val1 = (length * length) * 2.6
val2 = ((length * length) * 2.6) / 1.5
print(message.format(val1, val2))