我有上述错误s1="一些很长的字符串............"

有人知道我哪里做错了吗?


当前回答

(假设你没有/不想在你的字符串中换行…)

这个字符串到底有多长?

我怀疑从文件或命令行读取一行的长度是有限制的,因为行尾被截断,解析器会看到类似s1="一些非常长的字符串..........(没有结尾),从而抛出解析错误?

你可以通过在源代码中转义换行符将长行拆分为多行,如下所示:

s1="some very long string.....\
...\
...."

其他回答

我也有这个问题,虽然这里有答案,但我想强调一点 后 /不应该有空位。要注意这一点

我也有这个确切的错误信息,对我来说,这个问题通过添加“\”来解决

原来,我的长字符串被分成了大约八行,最后是“\”,其中一行少了一个“\”。

Python IDLE没有指定这个错误所在的行号,但它用红色高亮显示了一个完全正确的变量赋值语句,把我弄糊涂了。实际的畸形字符串语句(带有“\”的多行)与被突出显示的语句相邻。也许这能帮到别人。

我遇到了这个问题——我最终发现原因是我在字符串中包含了\字符。如果你有任何这些,“转义”他们与\\,它应该工作正常。

在我使用Mac OS X的情况下,我有以下声明:

model.export_srcpkg(platform, toolchain, 'mymodel_pkg.zip', 'mymodel.dylib’)

我得到了错误:

  File "<stdin>", line 1
model.export_srcpkg(platform, toolchain, 'mymodel_pkg.zip', 'mymodel.dylib’)
                                                                             ^
SyntaxError: EOL while scanning string literal

当我改为:

model.export_srcpkg(platform, toolchain, "mymodel_pkg.zip", "mymodel.dylib")

它工作…

大卫

之前的大部分答案都是正确的,我的答案和aaronasterling非常相似,你也可以做3个单引号 S1 = " '一些很长的字符串............''