SyntaxError:EOL while scanning string literal -Python

SyntaxError: EOL while scanning string literal -Python

在扫描这部分的字符串文字时,我得到了SyntaxError:eol。

1
system.cpu.workload = LiveProcess(cmd = 'hello’, executable ='hello')

任何帮助都会得到重视。

谢谢你的好意!


问题是,您在hello周围使用不同类型的报价(cmd = 'hello’)。左边一个是ASCII单引号,另一个是RIGHT SINGLE QUOTATION MARK

1
2
3
4
5
6
7
8
>>> 'hello’
  File"<ipython-input-56-3231cc2cf7bf>", line 1
    '
hello’
            ^
SyntaxError: EOL while scanning string literal

>>> 'hello'
'hello'

实际上是一个Unicode字符:

1
2
>>>"’".decode('utf-8')
u'\u2019'

围绕"你好"的右引号是错误的-它是反引号,而不是简单的。


不能用"…"创建多行字符串。你必须使用''.'.'.''或"…".


看起来您的代码中有一个错误的单引号。python中有三种引号:

1
2
3
" double quote
' single quote
` backtick

双引号和单引号可以互换使用;如果值包含另一个值,请使用一种,以避免使用反斜杠进行难看的转义序列。

然而,倒计时更像一个运算符,并将其所包含的值转换为其"字符串表示"。

在我看来,代码中混合了单引号和反勾号。