首页 > 解决方案 > 多次检查但仍然 SyntaxError:扫描字符串文字时 EOL

问题描述

我已多次检查此字符串以确保 (".") 就位,但消息

File "<ipython-input-13-ef09f7b4583b>", line 48 plt.savefig("C:\scratch\\data\"+str(angle).zfill(3)+".")

SyntaxError: EOL while scanning string literal

仍然出现。

有什么建议么?

if save is not False:
    plt.savefig("C:\scratch\\data\"+str(angle).zfill(3)+".png")
    plt.close("all")
else:
    plt.show()

return

标签: python-3.x

解决方案


Python 字符串不能终止,\因为这将转义结束符"(或')。

你有几个选择:

  • 以恒定的方式使用双反斜杠:

    plt.savefig("C:\\scratch\\data\\" + str(angle).zfill(3) + ".png")
    
  • 使用,最好与原始字符串组合使用,.format以避免目录名称以 开头或任何其他以 为前缀时将成为控制序列的字符的问题:tn\

    plt.savefig(r"C:\scratch\data\{}.png".format(str(angle).zfill(3)))
    

推荐阅读