我有这个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
jjjwad0x1#
除法运算符是/,而不是\
/
\
dwthyt8l2#
反斜杠\是错误消息所涉及的行继续符,在它之后,只允许换行符/空格(在下一个非空格继续“中断”的行之前)。
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")
v9tzhpje3#
您必须在继续字符后按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"])
p4rjhz4m4#
除法运算子是/,而不是\。另外,反斜杠在Python字符串中有特殊的含义,可以用另一个反斜杠转义它:
"\\ 1.5 = "`
或使用原始字符串
r" \ 1.5 = "
nkoocmlb5#
那么,你想做什么呢?如果你想用除法,就用“/”而不是“"。如果是别的东西,请解释得更详细一点。
wribegjk6#
正如其他人已经提到的:除法运算符是**/而不是**。如果要打印字符串中的****字符,必须对其进行转义:
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))
piwo6bdm7#
这是不相关的问题;只是为了将来的目的。在我的情况下,我得到了这个错误信息时,使用正则表达式。这是我的代码和更正
text = "Hey I'm Kelly, how're you and how's it going?" import re
当我得到错误:
x=re.search(r'('\w+)|(\w+'\w+)', text)
正确代码:
x=re.search(r"('\w+)|(\w+'\w+)", text)
我打算在r后面用双引号而不是单引号。
7条答案
按热度按时间jjjwad0x1#
除法运算符是
/
,而不是\
dwthyt8l2#
反斜杠
\
是错误消息所涉及的行继续符,在它之后,只允许换行符/空格(在下一个非空格继续“中断”的行之前)。在字符串之外,反斜杠只能以这种方式出现。对于除法,您需要斜杠:
/
.如果要在字符串中写入逐字反斜杠,请通过将其加倍来对其进行转义:
"\\"
在您的代码中,您将使用它两次:
v9tzhpje3#
您必须在继续字符后按Enter键
注意:连续字符后的空格会导致错误
p4rjhz4m4#
除法运算子是
/
,而不是\
。另外,反斜杠在Python字符串中有特殊的含义,可以用另一个反斜杠转义它:
或使用原始字符串
nkoocmlb5#
那么,你想做什么呢?如果你想用除法,就用“/”而不是“"。如果是别的东西,请解释得更详细一点。
wribegjk6#
正如其他人已经提到的:除法运算符是**/而不是**。如果要打印字符串中的****字符,必须对其进行转义:
我想要打印出你想要的字符串我想你需要以下代码:
而这一个是上面的一个更具可读性的版本(使用格式方法):
piwo6bdm7#
这是不相关的问题;只是为了将来的目的。在我的情况下,我得到了这个错误信息时,使用正则表达式。这是我的代码和更正
当我得到错误:
正确代码:
我打算在r后面用双引号而不是单引号。