我有上述错误s1="一些很长的字符串............"
有人知道我哪里做错了吗?
我有上述错误s1="一些很长的字符串............"
有人知道我哪里做错了吗?
当前回答
在我的情况下,我的单引号字典字符串中有\r\n。我用\\r替换了\r的所有实例,用\\n替换了\\n,它修复了我的问题,正确地在eval'ed字典中返回转义换行符。
ast.literal_eval(my_str.replace('\r','\\r').replace('\n','\\n'))
.....
其他回答
你没有在一行的末尾加上“”。
如果你想这样做,使用""":
""" a very long string ......
....that can span multiple lines
"""
我也有这个问题,虽然这里有答案,但我想强调一点 后 /不应该有空位。要注意这一点
在访问任何硬盘目录时,我都遇到过同样的问题。 然后我用这种方法解决了它。
import os
os.startfile("D:\folder_name\file_name") #running shortcut
os.startfile("F:") #accessing directory
上图显示了一个错误和已解决的输出。
在我的情况下,我的单引号字典字符串中有\r\n。我用\\r替换了\r的所有实例,用\\n替换了\\n,它修复了我的问题,正确地在eval'ed字典中返回转义换行符。
ast.literal_eval(my_str.replace('\r','\\r').replace('\n','\\n'))
.....
(假设你没有/不想在你的字符串中换行…)
这个字符串到底有多长?
我怀疑从文件或命令行读取一行的长度是有限制的,因为行尾被截断,解析器会看到类似s1="一些非常长的字符串..........(没有结尾),从而抛出解析错误?
你可以通过在源代码中转义换行符将长行拆分为多行,如下所示:
s1="some very long string.....\
...\
...."