SyntaxError:(unicode错误)“ unicodeescape”编解码器无法解码位置0-1的字节:格式错误的\ N字符转义

时间:2019-08-06 11:11:10

标签: python

抱歉,我知道有类似的话题,但是我还是没有运气!我是Python的新手,正在尝试解释一位同事编写的代码。

我不断收到Unicodeescape错误:

SyntaxError: (unicode error) unicodeescape codec can't decode bytes in position 0-1: malformed \N character escape

我知道这与Python解释“用户”的方式有关,但是添加r并没有太多运气。或添加双斜杠(我可能把它们放在错误的位置了!)

非常感谢您的帮助。

folder_year = str(datetime.today().year) #Save current year as a variable
folder_month = str((datetime.today()- relativedelta(months=1)).strftime("%B")) #Save current month as a variable

yr_directory = "C:\\Users\\Beva\\Documents\\Lettings Index\\"+str(folder_year) #Current year folder link

full_directory = "C:\\Users\\Beva\\Documents\\Lettings Index\\"+str(folder_year)+"\\"+str(folder_month)+"\New Lets Old" #Current month for current year folder link

1 个答案:

答案 0 :(得分:1)

您可以像这样使用原始字符串(“添加r”):

>>> r'\New Lets Old'
'\\New Lets Old'

或者自己逃脱反斜杠:

>>> '\\New Lets Old'
'\\New Lets Old'

收到错误消息是因为Python尝试将\N...部分解释为Unicode代码点:

>>> '\N{LATIN CAPITAL LETTER B}\N{LATIN SMALL LETTER E}\N{LATIN SMALL LETTER V}\N{LATIN CAPITAL LETTER A}'
'BevA'

糟糕,我原来无法将问题中的代码向右滚动,也看不到\N的来源

相关问题