SyntaxError: (unicode error) ‘unicodeescape’ codec can’t decode bytes in position 16-17: truncated \UXXXXXXXX escape


错误描述

python中,当你遇到这个错误时,意味着你代码中的Unicode转译有问题了。一般这样的问题出现在windows的路径上。

比如,你的路径是:

test.load_data("C:\path\to\your\file")

但是,在python中,\是转译符号,所以在这里python不会把"C:\path\to\your\file"当作路径去处理,而是会识别转移符号。所以就会报错:

SyntaxError: (unicode error) 'unicodeescape' codec can't decode bytes in position 16-17: truncated \UXXXXXXXX escape

解决办法

有两种解决方法:

一、将\替换为/

比如上面的路径,我们把它修改为:

C:/path/to/your/file

这样,python在读取路径时就没有问题了。

二、在路径前添加r

这种方法更简单,只需要在windows型的路径前加一个字母r:

test.load_data(r"C:\path\to\your\file")

这里的前缀r的意义是告诉python后面的字符串不用转译,保持原样(路径)。